diff options
Diffstat (limited to 'src/serialport/qserialport_unix.cpp')
-rw-r--r-- | src/serialport/qserialport_unix.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
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(); |