diff options
Diffstat (limited to 'src/serialport/qserialport_win.cpp')
-rw-r--r-- | src/serialport/qserialport_win.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/serialport/qserialport_win.cpp b/src/serialport/qserialport_win.cpp index 64ca00e..a43e620 100644 --- a/src/serialport/qserialport_win.cpp +++ b/src/serialport/qserialport_win.cpp @@ -330,15 +330,15 @@ bool QSerialPortPrivate::waitForReadyRead(int msecs) { Q_Q(QSerialPort); - QElapsedTimer stopWatch; - stopWatch.start(); - if (!writeStarted && !_q_startAsyncWrite()) return false; const qint64 initialReadBufferSize = readBuffer.size(); qint64 currentReadBufferSize = initialReadBufferSize; + QElapsedTimer stopWatch; + stopWatch.start(); + do { bool timedOut = false; HANDLE triggeredEvent = 0; @@ -384,12 +384,12 @@ bool QSerialPortPrivate::waitForBytesWritten(int msecs) if (writeBuffer.isEmpty()) return false; - QElapsedTimer stopWatch; - stopWatch.start(); - if (!writeStarted && !_q_startAsyncWrite()) return false; + QElapsedTimer stopWatch; + stopWatch.start(); + forever { bool timedOut = false; HANDLE triggeredEvent = 0; |