diff options
author | Andre Hartmann <aha_1980@gmx.de> | 2021-06-23 14:39:32 +0200 |
---|---|---|
committer | André Hartmann <aha_1980@gmx.de> | 2021-07-19 11:28:13 +0000 |
commit | 993f5166e0d88e6e0d2d428038ba56d8338fc3a4 (patch) | |
tree | 0b1f21a7a3d788b02ca4af37dcb23844766b2a3e /src/plugins/canbus | |
parent | 8eaa91e1edd7a2b5849a18487a08c440b2b7a27a (diff) |
TinyCAN: Remove redundant size check
The frame payload size is already checked in
TinyCanBackend::writeFrame and removing the
check here makes the code more in line with the
other backends.
Change-Id: I045b01b7bf5ae21bacc0c5783b66dc51bff139be
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Diffstat (limited to 'src/plugins/canbus')
-rw-r--r-- | src/plugins/canbus/tinycan/tinycanbackend.cpp | 33 |
1 files changed, 14 insertions, 19 deletions
diff --git a/src/plugins/canbus/tinycan/tinycanbackend.cpp b/src/plugins/canbus/tinycan/tinycanbackend.cpp index c990f91..bffcbf9 100644 --- a/src/plugins/canbus/tinycan/tinycanbackend.cpp +++ b/src/plugins/canbus/tinycan/tinycanbackend.cpp @@ -355,25 +355,20 @@ void TinyCanBackendPrivate::startWrite() const qsizetype payloadSize = payload.size(); TCanMsg message = {}; - - if (Q_UNLIKELY(payloadSize > qsizetype(sizeof(message.Data.Bytes)))) { - qCWarning(QT_CANBUS_PLUGINS_TINYCAN, "Cannot write frame with payload size %d.", int(payloadSize)); - } else { - message.Id = frame.frameId(); - message.Flags.Flag.Len = payloadSize; - message.Flags.Flag.Error = (frame.frameType() == QCanBusFrame::ErrorFrame); - message.Flags.Flag.RTR = (frame.frameType() == QCanBusFrame::RemoteRequestFrame); - message.Flags.Flag.TxD = 1; - message.Flags.Flag.EFF = frame.hasExtendedFrameFormat(); - - const qint32 messagesToWrite = 1; - ::memcpy(message.Data.Bytes, payload.constData(), payloadSize); - const int ret = ::CanTransmit(channelIndex, &message, messagesToWrite); - if (Q_UNLIKELY(ret < 0)) - q->setError(systemErrorString(ret), QCanBusDevice::CanBusError::WriteError); - else - emit q->framesWritten(messagesToWrite); - } + message.Id = frame.frameId(); + message.Flags.Flag.Len = payloadSize; + message.Flags.Flag.Error = (frame.frameType() == QCanBusFrame::ErrorFrame); + message.Flags.Flag.RTR = (frame.frameType() == QCanBusFrame::RemoteRequestFrame); + message.Flags.Flag.TxD = 1; + message.Flags.Flag.EFF = frame.hasExtendedFrameFormat(); + + const qint32 messagesToWrite = 1; + ::memcpy(message.Data.Bytes, payload.constData(), payloadSize); + const int ret = ::CanTransmit(channelIndex, &message, messagesToWrite); + if (Q_UNLIKELY(ret < 0)) + q->setError(systemErrorString(ret), QCanBusDevice::CanBusError::WriteError); + else + emit q->framesWritten(messagesToWrite); if (q->hasOutgoingFrames() && !writeNotifier->isActive()) writeNotifier->start(); |