From bc5916ebc983972a3f074a04a52bbf6da5c85a68 Mon Sep 17 00:00:00 2001 From: Andy Piper Date: Thu, 29 Aug 2019 08:13:59 +0100 Subject: [PATCH] Filter: comment on reserved config. cope with notch allocation failure. --- libraries/Filter/HarmonicNotchFilter.cpp | 6 ++++++ libraries/Filter/NotchFilter.cpp | 2 ++ 2 files changed, 8 insertions(+) diff --git a/libraries/Filter/HarmonicNotchFilter.cpp b/libraries/Filter/HarmonicNotchFilter.cpp index 064bcfd2ac..227c465a77 100644 --- a/libraries/Filter/HarmonicNotchFilter.cpp +++ b/libraries/Filter/HarmonicNotchFilter.cpp @@ -14,6 +14,7 @@ */ #include "HarmonicNotchFilter.h" +#include #define HNF_MAX_FILTERS 3 #define HNF_MAX_HARMONICS 8 @@ -121,6 +122,11 @@ void HarmonicNotchFilter::allocate_filters(uint8_t harmonics) } if (_num_filters > 0) { _filters = new NotchFilter[_num_filters]; + if (_filters == nullptr) { + gcs().send_text(MAV_SEVERITY_WARNING, "Failed to allocate %lu bytes for HarmonicNotchFilter", _num_filters * sizeof(NotchFilter)); + _num_filters = 0; + } + } _harmonics = harmonics; } diff --git a/libraries/Filter/NotchFilter.cpp b/libraries/Filter/NotchFilter.cpp index 8b024989fa..5b5932ad78 100644 --- a/libraries/Filter/NotchFilter.cpp +++ b/libraries/Filter/NotchFilter.cpp @@ -90,6 +90,8 @@ const AP_Param::GroupInfo NotchFilterParams::var_info[] = { // @User: Advanced AP_GROUPINFO_FLAGS("ENABLE", 1, NotchFilterParams, _enable, 0, AP_PARAM_FLAG_ENABLE), + // Slots 2 and 3 are reserved - they were integer versions of FREQ and BW which have since been converted to float + // @Param: ATT // @DisplayName: Attenuation // @Description: Notch attenuation in dB