Skip to content

Commit 44c0676

Browse files
committed
init commit
Signed-off-by: ismetatabay <[email protected]>
1 parent 8996cdb commit 44c0676

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

ros2_socketcan/src/socket_can_id.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,8 +136,13 @@ CanId & CanId::identifier(const IdT id)
136136
constexpr auto MAX_STANDARD = 0x07EFU;
137137
static_assert(MAX_EXTENDED <= EXTENDED_ID_MASK, "Max extended id value is wrong");
138138
static_assert(MAX_STANDARD <= STANDARD_ID_MASK, "Max extended id value is wrong");
139-
const auto max_id = is_extended() ? MAX_EXTENDED : MAX_STANDARD;
140-
if (max_id < id) {
139+
auto max_id = MAX_STANDARD;
140+
auto unmasked_id = id;
141+
if (is_extended()) {
142+
max_id = MAX_EXTENDED;
143+
unmasked_id = id & ~(EXTENDED_MASK);
144+
}
145+
if (max_id < unmasked_id) {
141146
throw std::domain_error{"CanId would be truncated!"};
142147
}
143148
// Clear and set

0 commit comments

Comments
 (0)