diff options
author | Andre Hartmann <aha_1980@gmx.de> | 2017-01-09 23:02:45 +0100 |
---|---|---|
committer | André Hartmann <aha_1980@gmx.de> | 2017-01-10 08:39:43 +0000 |
commit | 7408955f6d44b33403cd6419f8a6452d66ce16a5 (patch) | |
tree | 83c035216d943835412a6ff37337be600159a0eb /src/plugins/canbus/socketcan | |
parent | 2cb158abd073a7a7746ad8a21ff2a4e583e41345 (diff) |
SocketCAN: Set unused can{fd}_frame fields to zero when writing
At the moment, this is most important for canfd_frame.flags.
For other reserved fields this might be important later, too.
Change-Id: I66013a5ddac1f2f21a03c28cdbe9ac6719a604ce
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Rolf Eike Beer <eb@emlix.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Diffstat (limited to 'src/plugins/canbus/socketcan')
-rw-r--r-- | src/plugins/canbus/socketcan/socketcanbackend.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/plugins/canbus/socketcan/socketcanbackend.cpp b/src/plugins/canbus/socketcan/socketcanbackend.cpp index 8974279..3226e0e 100644 --- a/src/plugins/canbus/socketcan/socketcanbackend.cpp +++ b/src/plugins/canbus/socketcan/socketcanbackend.cpp @@ -380,6 +380,7 @@ bool SocketCanBackend::writeFrame(const QCanBusFrame &newData) qint64 bytesWritten = 0; if (newData.hasFlexibleDataRateFormat()) { canfd_frame frame; + memset(&frame, 0, sizeof(frame)); frame.len = newData.payload().size(); frame.can_id = canId; ::memcpy(frame.data, newData.payload().constData(), frame.len); @@ -387,6 +388,7 @@ bool SocketCanBackend::writeFrame(const QCanBusFrame &newData) bytesWritten = ::write(canSocket, &frame, sizeof(frame)); } else { can_frame frame; + memset(&frame, 0, sizeof(frame)); frame.can_dlc = newData.payload().size(); frame.can_id = canId; ::memcpy(frame.data, newData.payload().constData(), frame.can_dlc); |