// and airports data in parallel with a nav-cache rebuild.
SGPath tsyncCache(globals->get_fg_home());
tsyncCache.append("terrasync-cache.xml");
+
+ // wipe the cache file if requested
+ if (flightgear::Options::sharedInstance()->isOptionSet("restore-defaults")) {
+ SG_LOG(SG_GENERAL, SG_INFO, "restore-defaults requested, wiping terrasync update cache at " <<
+ tsyncCache);
+ if (tsyncCache.exists()) {
+ tsyncCache.remove();
+ }
+ }
+
fgSetString("/sim/terrasync/cache-path", tsyncCache.c_str());
- simgear::SGTerraSync* terra_sync = new simgear::SGTerraSync(globals->get_props());
+ simgear::SGTerraSync* terra_sync = new simgear::SGTerraSync();
+ terra_sync->setRoot(globals->get_props());
globals->add_subsystem("terrasync", terra_sync);
SG_LOG( SG_GENERAL, SG_INFO, "FlightGear: Version "
<< version );
SG_LOG( SG_GENERAL, SG_INFO, "Built with " << SG_COMPILER_STR << std::endl );
- SG_LOG( SG_GL,
- SG_INFO,
- "osg::Referenced thread safe reference counting is "
- << (osg::Referenced::getThreadSafeReferenceCounting() ? "enabled"
- : "disabled")
- );
// Allocate global data structures. This needs to happen before
// we parse command line options
// pass control off to the master event handler
int result = fgOSMainLoop();
+ frame_signal.clear();
+ fgOSCloseWindow();
// clean up here; ensure we null globals to avoid
// confusing the atexit() handler