From 1fd5df421ea30ac7f2bd994f58956ce46e90fcec Mon Sep 17 00:00:00 2001 From: Jonathan Liu Date: Tue, 10 Mar 2015 17:37:12 +1100 Subject: qtserialport: backport patch to silence Valgrind warning Signed-off-by: Jonathan Liu Signed-off-by: Martin Jansa --- .../0001-Unix-Clear-serial_struct-instances.patch | 42 ++++++++++++++++++++++ recipes-qt/qt5/qtserialport.inc | 4 +++ .../0001-Unix-Clear-serial_struct-instances.patch | 42 ++++++++++++++++++++++ 3 files changed, 88 insertions(+) create mode 100644 recipes-qt/qt5/qtserialport-git/0001-Unix-Clear-serial_struct-instances.patch create mode 100644 recipes-qt/qt5/qtserialport/0001-Unix-Clear-serial_struct-instances.patch (limited to 'recipes-qt') diff --git a/recipes-qt/qt5/qtserialport-git/0001-Unix-Clear-serial_struct-instances.patch b/recipes-qt/qt5/qtserialport-git/0001-Unix-Clear-serial_struct-instances.patch new file mode 100644 index 00000000..b14cf013 --- /dev/null +++ b/recipes-qt/qt5/qtserialport-git/0001-Unix-Clear-serial_struct-instances.patch @@ -0,0 +1,42 @@ +From 53afe73154c7c00b54cd280fa3d6c9127a2bc84b Mon Sep 17 00:00:00 2001 +From: Jonathan Liu +Date: Mon, 9 Mar 2015 22:35:56 +1100 +Subject: [PATCH] Unix: Clear serial_struct instances + +Silences the following Valgrind warning: +Conditional jump or move depends on uninitialised value(s) + +Upstream-Status: Backport from 5.5 branch + +Change-Id: I8fd8cfd6aa6f75ed515e6151cfc282faca508bdc +Reviewed-by: Denis Shienkov +Signed-off-by: Jonathan Liu +--- + src/serialport/qserialport_unix.cpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/serialport/qserialport_unix.cpp b/src/serialport/qserialport_unix.cpp +index 34ef41d..7cf356b 100644 +--- a/src/serialport/qserialport_unix.cpp ++++ b/src/serialport/qserialport_unix.cpp +@@ -439,6 +439,8 @@ QSerialPortPrivate::setStandardBaudRate(qint32 baudRate, QSerialPort::Directions + { + struct serial_struct currentSerialInfo; + ++ ::memset(¤tSerialInfo, 0, sizeof(currentSerialInfo)); ++ + if ((::ioctl(descriptor, TIOCGSERIAL, ¤tSerialInfo) != -1) + && (currentSerialInfo.flags & ASYNC_SPD_CUST)) { + currentSerialInfo.flags &= ~ASYNC_SPD_CUST; +@@ -469,6 +471,8 @@ QSerialPortPrivate::setCustomBaudRate(qint32 baudRate, QSerialPort::Directions d + + struct serial_struct currentSerialInfo; + ++ ::memset(¤tSerialInfo, 0, sizeof(currentSerialInfo)); ++ + if (::ioctl(descriptor, TIOCGSERIAL, ¤tSerialInfo) == -1) + return decodeSystemError(); + +-- +2.3.2 + diff --git a/recipes-qt/qt5/qtserialport.inc b/recipes-qt/qt5/qtserialport.inc index 8bb168e2..c9877c67 100644 --- a/recipes-qt/qt5/qtserialport.inc +++ b/recipes-qt/qt5/qtserialport.inc @@ -1,5 +1,9 @@ require qt5.inc +SRC_URI += " \ + file://0001-Unix-Clear-serial_struct-instances.patch \ +" + DEPENDS += "qtbase" # text of LGPL_EXCEPTION.txt and LICENSE.FDL is slightly different than what diff --git a/recipes-qt/qt5/qtserialport/0001-Unix-Clear-serial_struct-instances.patch b/recipes-qt/qt5/qtserialport/0001-Unix-Clear-serial_struct-instances.patch new file mode 100644 index 00000000..b14cf013 --- /dev/null +++ b/recipes-qt/qt5/qtserialport/0001-Unix-Clear-serial_struct-instances.patch @@ -0,0 +1,42 @@ +From 53afe73154c7c00b54cd280fa3d6c9127a2bc84b Mon Sep 17 00:00:00 2001 +From: Jonathan Liu +Date: Mon, 9 Mar 2015 22:35:56 +1100 +Subject: [PATCH] Unix: Clear serial_struct instances + +Silences the following Valgrind warning: +Conditional jump or move depends on uninitialised value(s) + +Upstream-Status: Backport from 5.5 branch + +Change-Id: I8fd8cfd6aa6f75ed515e6151cfc282faca508bdc +Reviewed-by: Denis Shienkov +Signed-off-by: Jonathan Liu +--- + src/serialport/qserialport_unix.cpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/serialport/qserialport_unix.cpp b/src/serialport/qserialport_unix.cpp +index 34ef41d..7cf356b 100644 +--- a/src/serialport/qserialport_unix.cpp ++++ b/src/serialport/qserialport_unix.cpp +@@ -439,6 +439,8 @@ QSerialPortPrivate::setStandardBaudRate(qint32 baudRate, QSerialPort::Directions + { + struct serial_struct currentSerialInfo; + ++ ::memset(¤tSerialInfo, 0, sizeof(currentSerialInfo)); ++ + if ((::ioctl(descriptor, TIOCGSERIAL, ¤tSerialInfo) != -1) + && (currentSerialInfo.flags & ASYNC_SPD_CUST)) { + currentSerialInfo.flags &= ~ASYNC_SPD_CUST; +@@ -469,6 +471,8 @@ QSerialPortPrivate::setCustomBaudRate(qint32 baudRate, QSerialPort::Directions d + + struct serial_struct currentSerialInfo; + ++ ::memset(¤tSerialInfo, 0, sizeof(currentSerialInfo)); ++ + if (::ioctl(descriptor, TIOCGSERIAL, ¤tSerialInfo) == -1) + return decodeSystemError(); + +-- +2.3.2 + -- cgit v1.2.3-54-g00ecf