diff --git a/libraries/AP_RCProtocol/AP_RCProtocol_SBUS.cpp b/libraries/AP_RCProtocol/AP_RCProtocol_SBUS.cpp index 3f6f476a42..11f20e7f26 100644 --- a/libraries/AP_RCProtocol/AP_RCProtocol_SBUS.cpp +++ b/libraries/AP_RCProtocol/AP_RCProtocol_SBUS.cpp @@ -221,7 +221,7 @@ void AP_RCProtocol_SBUS::process_pulse(uint32_t width_s0, uint32_t width_s1) goto reset; } - if (byte_ofs > 25) { + if (byte_ofs >= ARRAY_SIZE(sbus_state.bytes)) { goto reset; } // pull in the high bits diff --git a/libraries/AP_RCProtocol/AP_RCProtocol_SRXL.cpp b/libraries/AP_RCProtocol/AP_RCProtocol_SRXL.cpp index ea70c37aa6..17c693eff6 100644 --- a/libraries/AP_RCProtocol/AP_RCProtocol_SRXL.cpp +++ b/libraries/AP_RCProtocol/AP_RCProtocol_SRXL.cpp @@ -62,7 +62,7 @@ void AP_RCProtocol_SRXL::process_pulse(uint32_t width_s0, uint32_t width_s1) byte_ofs = srxl_state.bit_ofs/10; bit_ofs = srxl_state.bit_ofs%10; - if (byte_ofs > SRXL_FRAMELEN_MAX) { + if (byte_ofs >= SRXL_FRAMELEN_MAX) { goto reset; } // pull in the high bits