From f611eddadde74138290ad684a56bf7896e4d47cf Mon Sep 17 00:00:00 2001 From: baumanta <baumanta@student.ethz.ch> Date: Tue, 6 Nov 2018 10:24:41 +0100 Subject: [PATCH] unadvertise publishers in the destructor --- src/lib/CollisionAvoidance/CollisionAvoidance.cpp | 10 ++++++++++ src/lib/CollisionAvoidance/CollisionAvoidance.hpp | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/lib/CollisionAvoidance/CollisionAvoidance.cpp b/src/lib/CollisionAvoidance/CollisionAvoidance.cpp index 1afc2f5c26..9b712cc553 100644 --- a/src/lib/CollisionAvoidance/CollisionAvoidance.cpp +++ b/src/lib/CollisionAvoidance/CollisionAvoidance.cpp @@ -46,6 +46,16 @@ CollisionAvoidance::CollisionAvoidance() : } +CollisionAvoidance::~CollisionAvoidance(){ + //unadvertise publishers + if (_constraints_pub != nullptr) { + orb_unadvertise(_constraints_pub); + } + if (_mavlink_log_pub != nullptr) { + orb_unadvertise(_mavlink_log_pub); + } +} + bool CollisionAvoidance::initializeSubscriptions(SubscriptionArray &subscription_array) { if (!subscription_array.get(ORB_ID(obstacle_distance), _sub_obstacle_distance)) { diff --git a/src/lib/CollisionAvoidance/CollisionAvoidance.hpp b/src/lib/CollisionAvoidance/CollisionAvoidance.hpp index 39a05c9bd0..66a72d75d4 100644 --- a/src/lib/CollisionAvoidance/CollisionAvoidance.hpp +++ b/src/lib/CollisionAvoidance/CollisionAvoidance.hpp @@ -63,7 +63,7 @@ class CollisionAvoidance : public ModuleParams public: CollisionAvoidance(); - ~CollisionAvoidance() = default; + ~CollisionAvoidance(); /** * Initialize the uORB subscriptions using an array -- GitLab