|
From: James T. <jam...@kd...> - 2017-05-29 21:48:27
|
> On 29 May 2017, at 18:24, Edward d'Auvergne <tru...@gm...> wrote: > > Another dumb question, not having c++ training, but is this how you'd > eliminate all the raw pointers: > > https://sourceforge.net/u/edauvergne/flightgear/ci/83057dc8f82fa45c32ab36fac28e46effa3266de/ <https://sourceforge.net/u/edauvergne/flightgear/ci/83057dc8f82fa45c32ab36fac28e46effa3266de/> > > I'll merge this myself if it's reasonable. Almost: shutdown should become: _impl.reset() And “probably* unbind() should look like _latProp.reset(); _moonlight.reset() Because at the end of unbind(), code should not be holding references to the global property tree. (This is part of the reset contract). However, many existing subsystems do not implement unbind() correctly - improving this makes subsystems more independent and restartable. (And helps reduce reset-related bugs) Kind regards, James |