]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/bootstrap.cxx
Refactor FG_HOME init, so we can log sooner.
[flightgear.git] / src / Main / bootstrap.cxx
index 0f43f766a465fe70a05956194a1f737fc4b4e802..a4425c76ab0ed76d08d561e47d18ffd9d855db2d 100644 (file)
@@ -49,8 +49,6 @@
 
 #include <simgear/compiler.h>
 #include <simgear/structure/exception.hxx>
-#include <simgear/debug/logstream.hxx>
-#include <simgear/math/SGMath.hxx>
 
 #include <cstring>
 #include <iostream>
@@ -65,8 +63,8 @@ using std::endl;
 
 #include "fg_os.hxx"
 
-string homedir;
-string hostname;
+std::string homedir;
+std::string hostname;
 
 // forward declaration.
 void fgExitCleanup();
@@ -127,7 +125,6 @@ int main ( int argc, char **argv );
 int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
                              LPSTR lpCmdLine, int nCmdShow) {
 
-  logbuf::has_no_console();
   main( __argc, __argv );
 }
 #endif
@@ -166,26 +163,21 @@ static void fg_terminate() {
 int _bootstrap_OSInit;
 
 // Main entry point; catch any exceptions that have made it this far.
-int main ( int argc, char **argv ) {
+int main ( int argc, char **argv )
+{
 #if _MSC_VER
   // Don't show blocking "no disk in drive" error messages on Windows 7,
   // silently return errors to application instead.
   // See Microsoft MSDN #ms680621: "GUI apps should specify SEM_NOOPENFILEERRORBOX"
   SetErrorMode(SEM_NOOPENFILEERRORBOX);
 
-  // Windows has no $HOME aka %HOME%, so we have to construct the full path.
-  homedir = ::getenv("APPDATA");
-  homedir.append("\\flightgear.org");
-
   hostname = ::getenv( "COMPUTERNAME" );
 #else
   // Unix(alike) systems
   char _hostname[256];
   gethostname(_hostname, 256);
   hostname = _hostname;
-  
-  homedir = ::getenv( "HOME" );
-  
+    
   signal(SIGPIPE, SIG_IGN);
 #endif
 
@@ -260,7 +252,7 @@ int main ( int argc, char **argv ) {
         if (std::strlen(t.getOrigin()) != 0)
             cerr << " (received from " << t.getOrigin() << ')' << endl;
 
-    } catch (const string &s) {
+    } catch (const std::string &s) {
         cerr << "Fatal error: " << s << endl;
 
     } catch (const char *s) {
@@ -275,8 +267,8 @@ int main ( int argc, char **argv ) {
     return 0;
 }
 
-// do some clean up on exit.  Specifically we want to call alutExit()
-// which happens in the sound manager destructor.
+// do some clean up on exit.  Specifically we want to delete the sound-manager,
+// so OpenAL device and context are released cleanly
 void fgExitCleanup() {
 
     if (_bootstrap_OSInit != 0)