summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Shienkov <denis.shienkov@gmail.com>2014-11-22 23:22:41 +0300
committerDenis Shienkov <denis.shienkov@gmail.com>2014-11-23 15:28:37 +0100
commit6afc96d53348ae307a249c6fe9256ce9f3f0ff03 (patch)
treef8fbeee6a35c7f27896c4580d4bed91d52307f0e
parent93d387a375abfed85c3ce37b68c80f3efd04ea6d (diff)
downloadqtserialport-6afc96d53348ae307a249c6fe9256ce9f3f0ff03.tar.gz
Simplify handling of overlapped result
There is not necessary to pass direction to handleOverlappedResult(). Because it is passed already as a second argument (pointer to OVERLAPPED structure that defines a desired direction). Also this method is renamed to more simple and short name. Change-Id: I9c20cf97c1712aed8d3e9ea6d9b4687ce4487523 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
-rw-r--r--src/serialport/qserialport_win.cpp12
-rw-r--r--src/serialport/qserialport_win_p.h2
2 files changed, 7 insertions, 7 deletions
diff --git a/src/serialport/qserialport_win.cpp b/src/serialport/qserialport_win.cpp
index c46bfb9..4fb1dac 100644
--- a/src/serialport/qserialport_win.cpp
+++ b/src/serialport/qserialport_win.cpp
@@ -492,7 +492,7 @@ bool QSerialPortPrivate::setDataErrorPolicy(QSerialPort::DataErrorPolicy policy)
bool QSerialPortPrivate::_q_completeAsyncCommunication()
{
- if (handleOverlappedResult(0, communicationOverlapped) == qint64(-1))
+ if (overlappedResult(communicationOverlapped) == qint64(-1))
return false;
if (EV_ERR & triggeredEventMask)
handleLineStatusErrors();
@@ -502,7 +502,7 @@ bool QSerialPortPrivate::_q_completeAsyncCommunication()
bool QSerialPortPrivate::_q_completeAsyncRead()
{
- const qint64 bytesTransferred = handleOverlappedResult(QSerialPort::Input, readCompletionOverlapped);
+ const qint64 bytesTransferred = overlappedResult(readCompletionOverlapped);
if (bytesTransferred == qint64(-1)) {
readStarted = false;
return false;
@@ -527,7 +527,7 @@ bool QSerialPortPrivate::_q_completeAsyncWrite()
Q_Q(QSerialPort);
if (writeStarted) {
- const qint64 bytesTransferred = handleOverlappedResult(QSerialPort::Output, writeCompletionOverlapped);
+ const qint64 bytesTransferred = overlappedResult(writeCompletionOverlapped);
if (bytesTransferred == qint64(-1)) {
writeStarted = false;
return false;
@@ -784,7 +784,7 @@ bool QSerialPortPrivate::updateCommTimeouts()
return true;
}
-qint64 QSerialPortPrivate::handleOverlappedResult(int direction, OVERLAPPED &overlapped)
+qint64 QSerialPortPrivate::overlappedResult(OVERLAPPED &overlapped)
{
Q_Q(QSerialPort);
@@ -794,9 +794,9 @@ qint64 QSerialPortPrivate::handleOverlappedResult(int direction, OVERLAPPED &ove
if (error == QSerialPort::NoError)
return qint64(0);
if (error != QSerialPort::ResourceError) {
- if (direction == QSerialPort::Input)
+ if (&overlapped == &readCompletionOverlapped)
q->setError(QSerialPort::ReadError);
- else if (direction == QSerialPort::Output)
+ else if (&overlapped == &writeCompletionOverlapped)
q->setError(QSerialPort::WriteError);
else
q->setError(error);
diff --git a/src/serialport/qserialport_win_p.h b/src/serialport/qserialport_win_p.h
index bdcbed3..05cb4ef 100644
--- a/src/serialport/qserialport_win_p.h
+++ b/src/serialport/qserialport_win_p.h
@@ -145,7 +145,7 @@ private:
bool initialize();
bool updateDcb();
bool updateCommTimeouts();
- qint64 handleOverlappedResult(int direction, OVERLAPPED &overlapped);
+ qint64 overlappedResult(OVERLAPPED &overlapped);
bool waitAnyEvent(int msecs, bool *timedOut, HANDLE *triggeredEvent);