diff --git a/src/main.cpp b/src/main.cpp
index f18718934..3cdab500b 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -219,10 +219,12 @@ int main(int argc, char *argv[])
}
}
+ Settings.saveGameCfg(CKP.Option);
+
cleanupResources(&CKP);
Settings.saveDrvCfg();
-
+
printf("Thank you very much for playing this wonderful game!");
return 0;
diff --git a/src/sdl/CSettings.cpp b/src/sdl/CSettings.cpp
index 3272e74c1..95e849f51 100644
--- a/src/sdl/CSettings.cpp
+++ b/src/sdl/CSettings.cpp
@@ -137,12 +137,13 @@ void CSettings::loadDefaultGameCfg(stOption *Option)
short CSettings::loadGameCfg(stOption *Option)
{
- short retval = 0;
int i;
CParser Parser;
- if(!Parser.loadParseFile())
+ if(!Parser.loadParseFile()) {
+ loadDefaultGameCfg(Option);
return 1;
+ }
for (i = 0; i < NUM_OPTIONS; i++)
{
@@ -150,11 +151,10 @@ short CSettings::loadGameCfg(stOption *Option)
if(Option[i].value == -1)
{
loadDefaultGameCfg(Option);
- break;
+ return 1;
}
}
- return retval;
g_pLogFile->ftextOut("
Your personal settings were loaded successfully...
");
return 0;