Skip to content

Add assert to check payload length during codegen - #381

Merged
onur-ozkan merged 2 commits into
mavlink:masterfrom
pv42:panic_payload_len
Aug 25, 2025
Merged

Add assert to check payload length during codegen#381
onur-ozkan merged 2 commits into
mavlink:masterfrom
pv42:panic_payload_len

Conversation

@pv42

@pv42 pv42 commented Aug 22, 2025

Copy link
Copy Markdown
Contributor

Both MAVLink versions only support up to 255 payload bytes.
Currently the codegenerator will happily generate messages with any usize length. Such messages will cause panics when attempting to de-/serialize them.

This PR adds an assert to prevent such cases.

Note: It seems to be theoretically possbile to have a message definition over 255 bytes fit into a 255 payload with truncated zeros, but I cant see a usecase arise from this since everything past byte 255 would always need to be 0.

@pv42
pv42 force-pushed the panic_payload_len branch from 51a1d25 to 8c794d9 Compare August 22, 2025 11:50
Comment thread mavlink-bindgen/src/parser.rs Outdated
@onur-ozkan
onur-ozkan self-requested a review August 22, 2025 18:42
@onur-ozkan
onur-ozkan merged commit 000529b into mavlink:master Aug 25, 2025
45 checks passed
@pv42
pv42 deleted the panic_payload_len branch September 2, 2025 17:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants