diff options
Diffstat (limited to 'src/serialport/qserialport_win.cpp')
-rw-r--r-- | src/serialport/qserialport_win.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/serialport/qserialport_win.cpp b/src/serialport/qserialport_win.cpp index bd9a9fb..c47f1e4 100644 --- a/src/serialport/qserialport_win.cpp +++ b/src/serialport/qserialport_win.cpp @@ -549,11 +549,12 @@ bool QSerialPortPrivate::_q_completeAsyncRead() readStarted = false; - // start async read for possible remainder into driver queue if ((bytesTransferred == ReadChunkSize) && (policy == QSerialPort::IgnorePolicy)) return startAsyncRead(); - else // driver queue is emplty, so startup wait comm event + else if (readBufferMaxSize == 0 || readBufferMaxSize > readBuffer.size()) return startAsyncCommunication(); + else + return true; } bool QSerialPortPrivate::_q_completeAsyncWrite() |