From 9b046f5a12d6ab99aa51922003052aca07748d3a Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 27 May 2024 11:24:15 +1000 Subject: [PATCH] GCS_MAVLink: use NEW_NOTHROW for new(std::nothrow) --- libraries/GCS_MAVLink/GCS_Common.cpp | 14 +++++++------- libraries/GCS_MAVLink/GCS_Dummy.h | 2 +- libraries/GCS_MAVLink/GCS_FTP.cpp | 2 +- .../GCS_MAVLink/MissionItemProtocol_Fence.cpp | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/libraries/GCS_MAVLink/GCS_Common.cpp b/libraries/GCS_MAVLink/GCS_Common.cpp index 1f5ec42104..ad782c46ca 100644 --- a/libraries/GCS_MAVLink/GCS_Common.cpp +++ b/libraries/GCS_MAVLink/GCS_Common.cpp @@ -2480,19 +2480,19 @@ void GCS::update_send() #if AP_MISSION_ENABLED AP_Mission *mission = AP::mission(); if (mission != nullptr) { - missionitemprotocols[MAV_MISSION_TYPE_MISSION] = new MissionItemProtocol_Waypoints(*mission); + missionitemprotocols[MAV_MISSION_TYPE_MISSION] = NEW_NOTHROW MissionItemProtocol_Waypoints(*mission); } #endif #if HAL_RALLY_ENABLED AP_Rally *rally = AP::rally(); if (rally != nullptr) { - missionitemprotocols[MAV_MISSION_TYPE_RALLY] = new MissionItemProtocol_Rally(*rally); + missionitemprotocols[MAV_MISSION_TYPE_RALLY] = NEW_NOTHROW MissionItemProtocol_Rally(*rally); } #endif #if AP_FENCE_ENABLED AC_Fence *fence = AP::fence(); if (fence != nullptr) { - missionitemprotocols[MAV_MISSION_TYPE_FENCE] = new MissionItemProtocol_Fence(*fence); + missionitemprotocols[MAV_MISSION_TYPE_FENCE] = NEW_NOTHROW MissionItemProtocol_Fence(*fence); } #endif } @@ -2594,7 +2594,7 @@ void GCS::setup_uarts() #if AP_FRSKY_TELEM_ENABLED if (frsky == nullptr) { - frsky = new AP_Frsky_Telem(); + frsky = NEW_NOTHROW AP_Frsky_Telem(); if (frsky == nullptr || !frsky->init()) { delete frsky; frsky = nullptr; @@ -6389,7 +6389,7 @@ DefaultIntervalsFromFiles::DefaultIntervalsFromFiles(uint16_t max_num) if (max_num == 0) { return; } - _intervals = new from_file_default_interval[max_num]; + _intervals = NEW_NOTHROW from_file_default_interval[max_num]; _max_intervals = max_num; } @@ -6513,7 +6513,7 @@ void GCS_MAVLINK::initialise_message_intervals_from_config_files() } // first over-allocate: - DefaultIntervalsFromFiles *overallocated = new DefaultIntervalsFromFiles(128); + DefaultIntervalsFromFiles *overallocated = NEW_NOTHROW DefaultIntervalsFromFiles(128); if (overallocated == nullptr) { return; } @@ -6531,7 +6531,7 @@ void GCS_MAVLINK::initialise_message_intervals_from_config_files() delete overallocated; overallocated = nullptr; - default_intervals_from_files = new DefaultIntervalsFromFiles(num_required); + default_intervals_from_files = NEW_NOTHROW DefaultIntervalsFromFiles(num_required); if (default_intervals_from_files == nullptr) { return; } diff --git a/libraries/GCS_MAVLink/GCS_Dummy.h b/libraries/GCS_MAVLink/GCS_Dummy.h index 723f927dcd..f12155294d 100644 --- a/libraries/GCS_MAVLink/GCS_Dummy.h +++ b/libraries/GCS_MAVLink/GCS_Dummy.h @@ -55,7 +55,7 @@ protected: GCS_MAVLINK_Dummy *new_gcs_mavlink_backend(GCS_MAVLINK_Parameters ¶ms, AP_HAL::UARTDriver &uart) override { - return new GCS_MAVLINK_Dummy(params, uart); + return NEW_NOTHROW GCS_MAVLINK_Dummy(params, uart); } private: diff --git a/libraries/GCS_MAVLink/GCS_FTP.cpp b/libraries/GCS_MAVLink/GCS_FTP.cpp index 720142a839..e3e6509579 100644 --- a/libraries/GCS_MAVLink/GCS_FTP.cpp +++ b/libraries/GCS_MAVLink/GCS_FTP.cpp @@ -48,7 +48,7 @@ bool GCS_MAVLINK::ftp_init(void) { return true; } - ftp.requests = new ObjectBuffer(5); + ftp.requests = NEW_NOTHROW ObjectBuffer(5); if (ftp.requests == nullptr || ftp.requests->get_size() == 0) { goto failed; } diff --git a/libraries/GCS_MAVLink/MissionItemProtocol_Fence.cpp b/libraries/GCS_MAVLink/MissionItemProtocol_Fence.cpp index 3d8cd593d0..4db88146b1 100644 --- a/libraries/GCS_MAVLink/MissionItemProtocol_Fence.cpp +++ b/libraries/GCS_MAVLink/MissionItemProtocol_Fence.cpp @@ -233,7 +233,7 @@ MAV_MISSION_RESULT MissionItemProtocol_Fence::allocate_receive_resources(const u MAV_MISSION_RESULT MissionItemProtocol_Fence::allocate_update_resources() { const uint16_t _item_count = _fence.polyfence().num_stored_items(); - _updated_mask = new uint8_t[(_item_count+7)/8]; + _updated_mask = NEW_NOTHROW uint8_t[(_item_count+7)/8]; if (_updated_mask == nullptr) { return MAV_MISSION_ERROR; }