From 5a1a1781e2350e5caf21c814054dfeaa99c9faee Mon Sep 17 00:00:00 2001 From: James Turner Date: Fri, 6 Dec 2013 18:45:45 +0000 Subject: [PATCH] Reset: ensure FGODGuage shutsdown cleanly. - remove ODGuage instances during shutdown phase (don't wait until deletion) --- src/Cockpit/wxradar.cxx | 6 +++++- src/Cockpit/wxradar.hxx | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Cockpit/wxradar.cxx b/src/Cockpit/wxradar.cxx index a5b11c992..c7cbed471 100644 --- a/src/Cockpit/wxradar.cxx +++ b/src/Cockpit/wxradar.cxx @@ -118,7 +118,6 @@ wxRadarBg::wxRadarBg(SGPropertyNode *node) : wxRadarBg::~wxRadarBg () { _font_node->removeChangeListener(this); - delete _odg; } @@ -249,6 +248,11 @@ wxRadarBg::init () _time = 0.0; } +void wxRadarBg::shutdown() +{ + delete _odg; + _odg = NULL; +} // Local coordinates for each echo const osg::Vec3f echoCoords[4] = { diff --git a/src/Cockpit/wxradar.hxx b/src/Cockpit/wxradar.hxx index 7aff77717..8aba4c2cb 100644 --- a/src/Cockpit/wxradar.hxx +++ b/src/Cockpit/wxradar.hxx @@ -44,6 +44,8 @@ public: virtual ~wxRadarBg(); virtual void init(); + virtual void shutdown(); + virtual void update(double dt); virtual void valueChanged(SGPropertyNode *); -- 2.39.5