From 5253186cbecf3efeef3a46d738a707c21d5b2f5e Mon Sep 17 00:00:00 2001 From: gaschler Date: Wed, 24 Oct 2018 18:45:58 +0200 Subject: [PATCH] Fix virtual destructors (#1453) This is necessary because otherwise derived classes are potentially deleted incompletely, using the destructor of the interface. --- cartographer/mapping/grid_interface.h | 2 ++ cartographer/mapping/range_data_inserter_interface.h | 2 ++ 2 files changed, 4 insertions(+) diff --git a/cartographer/mapping/grid_interface.h b/cartographer/mapping/grid_interface.h index 29b2e80..b5825a6 100644 --- a/cartographer/mapping/grid_interface.h +++ b/cartographer/mapping/grid_interface.h @@ -25,6 +25,8 @@ namespace mapping { class GridInterface { // todo(kdaun) move mutual functions of Grid2D/3D here + public: + virtual ~GridInterface() {} }; } // namespace mapping diff --git a/cartographer/mapping/range_data_inserter_interface.h b/cartographer/mapping/range_data_inserter_interface.h index b9051ef..5170766 100644 --- a/cartographer/mapping/range_data_inserter_interface.h +++ b/cartographer/mapping/range_data_inserter_interface.h @@ -32,6 +32,8 @@ proto::RangeDataInserterOptions CreateRangeDataInserterOptions( class RangeDataInserterInterface { public: + virtual ~RangeDataInserterInterface() {} + // Inserts 'range_data' into 'grid'. virtual void Insert(const sensor::RangeData& range_data, GridInterface* grid) const = 0;