From 0085c9b54812b354cc6ff8887f60e77e9cff1eb3 Mon Sep 17 00:00:00 2001 From: "wagic.jeck" Date: Thu, 19 Nov 2009 01:58:18 +0000 Subject: [PATCH] Jeck - Quick fix to issue 198, options loading. Unknown options are now preserved: this should prevent any future options lossage... assuming the file loads properly. --- projects/mtg/include/GameOptions.h | 1 + projects/mtg/src/GameOptions.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/projects/mtg/include/GameOptions.h b/projects/mtg/include/GameOptions.h index 9d048a09a..bcf6c2be3 100644 --- a/projects/mtg/include/GameOptions.h +++ b/projects/mtg/include/GameOptions.h @@ -163,6 +163,7 @@ class GameOptions { private: vector values; + vector unknown; }; class GameSettings{ diff --git a/projects/mtg/src/GameOptions.cpp b/projects/mtg/src/GameOptions.cpp index 85bebff5a..a23d2a1cf 100644 --- a/projects/mtg/src/GameOptions.cpp +++ b/projects/mtg/src/GameOptions.cpp @@ -273,8 +273,10 @@ int GameOptions::load(){ string name = s.substr(0,found); string val = s.substr(found+1); int id = Options::getID(name); - if(id == INVALID_OPTION) + if(id == INVALID_OPTION){ + unknown.push_back(s); continue; + } (*this)[id].read(val); } @@ -306,6 +308,9 @@ int GameOptions::save(){ opt->write(&file, name); } + for(vector::size_type t=0;t