Skip to content

Commit 99ae1d9

Browse files
committed
fix(nebula_core_hw_interfaces): improve CAN FD frame validation and type safety
Signed-off-by: David Wong <david.wong@tier4.jp>
1 parent 997d1e3 commit 99ae1d9

File tree

1 file changed

+3
-3
lines changed
  • src/nebula_core/nebula_core_hw_interfaces/include/nebula_core_hw_interfaces/nebula_hw_interfaces_common/connections

1 file changed

+3
-3
lines changed

src/nebula_core/nebula_core_hw_interfaces/include/nebula_core_hw_interfaces/nebula_hw_interfaces_common/connections/can.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ class CanSocket
297297
* @return Number of bytes received.
298298
* @throws SocketError if recvmsg fails.
299299
*/
300-
ssize_t receive_frame_with_metadata(void * frame_ptr, size_t frame_size, RxMetadata & metadata)
300+
size_t receive_frame_with_metadata(void * frame_ptr, size_t frame_size, RxMetadata & metadata)
301301
{
302302
struct iovec iov;
303303
struct msghdr msg;
@@ -315,15 +315,15 @@ class CanSocket
315315
msg.msg_controllen = sizeof(ctrl);
316316
msg.msg_flags = 0;
317317

318-
ssize_t recv_result;
318+
ssize_t recv_result{};
319319
do {
320320
recv_result = recvmsg(sock_fd_.get(), &msg, 0);
321321
} while (recv_result == -1 && errno == EINTR);
322322

323323
if (recv_result < 0) throw SocketError(errno);
324324

325325
metadata.timestamp_ns = extract_timestamp(msg);
326-
return recv_result;
326+
return static_cast<size_t>(recv_result);
327327
}
328328

329329
/**

0 commit comments

Comments
 (0)