diff options
author | Richard Dale <richard.dale@codethink.co.uk> | 2013-07-04 09:56:59 +0100 |
---|---|---|
committer | Richard Dale <richard.dale@codethink.co.uk> | 2013-07-04 09:56:59 +0100 |
commit | b1abca2eee45e7b8ecf71cb5cd1e77a2821fcac2 (patch) | |
tree | 63b2817a318705017c2358964f4cc79ba08bed52 | |
parent | 12cd0feebe811ab3d07b0ce1c4236ee4ceba26f7 (diff) | |
parent | 58365228b3181ed03188fc8ff56007ea22678bb5 (diff) | |
download | qtserialport-baserock/morph.tar.gz |
Merge v5.1.0 releasebaserock/morph
-rw-r--r-- | src/serialport/qserialport_win.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/serialport/qserialport_win.cpp b/src/serialport/qserialport_win.cpp index bbc3e8c..e8d4d62 100644 --- a/src/serialport/qserialport_win.cpp +++ b/src/serialport/qserialport_win.cpp @@ -146,9 +146,14 @@ public: // Check for unexpected event. This event triggered when pulled previously // opened device from the system, when opened as for not to read and not to // write options and so forth. - if ((triggeredEventMask == 0) - || ((originalEventMask & triggeredEventMask) == 0)) { + if (triggeredEventMask == 0) error = true; + + // Workaround for standard CDC ACM serial ports, for which triggered an + // unexpected event EV_TXEMPTY at data transmission. + if ((originalEventMask & triggeredEventMask) == 0) { + if ((triggeredEventMask & EV_TXEMPTY) == 0) + error = true; } // Start processing a caught error. |