summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndre Hartmann <aha_1980@gmx.de>2018-03-17 21:06:20 +0100
committerAndré Hartmann <aha_1980@gmx.de>2018-04-13 16:01:28 +0000
commit80d0443a305d4787687d22a0ad8bdb0fcff96ccd (patch)
tree8222dfbd69e74585fedd3baadd1fe3104a7fcc1f
parent5165c67091da4438f2d37290f6c5855250d87eb0 (diff)
VectorCAN: Fix receiving frames with multiple open channels
As reason for the fix, see section "3.4.1 XLevent" in the Vector documentation XL_Driver_Library_Manual_EN.pdf, which states: "portHandle: Internal use only". This portHandle seems to be always zero and therefore channels greater then zero could not receive frames. Tested with Vectors simulated channels by sending frames to one channel which in turn were received by both channels. The sending channel had the local echo flag set, the other one not. [ChangeLog][QCanBus][VectorCAN] Fixed a receive problem in the VectorCAN plugin. When multiple channels were open, only the first one could receive frames. Task-number: QTBUG-67030 Change-Id: Ib76a04bc06e7b810d1c1cb092b79c4bc1aacf23a (cherry picked from commit 20cbe35dc3282b8e27278e3bd54d415cc8147d3c) Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
-rw-r--r--src/plugins/canbus/vectorcan/vectorcanbackend.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/plugins/canbus/vectorcan/vectorcanbackend.cpp b/src/plugins/canbus/vectorcan/vectorcanbackend.cpp
index 6c455da..155aa23 100644
--- a/src/plugins/canbus/vectorcan/vectorcanbackend.cpp
+++ b/src/plugins/canbus/vectorcan/vectorcanbackend.cpp
@@ -347,7 +347,7 @@ void VectorCanBackendPrivate::startRead()
break;
}
- if (event.tag != XL_RECEIVE_MSG || event.portHandle != portHandle)
+ if (event.tag != XL_RECEIVE_MSG)
continue;
const s_xl_can_msg &msg = event.tagData.msg;