diff options
-rw-r--r-- | crawl-ref/source/externs.h | 3 | ||||
-rw-r--r-- | crawl-ref/source/initfile.cc | 10 | ||||
-rw-r--r-- | crawl-ref/source/initfile.h | 3 |
3 files changed, 10 insertions, 6 deletions
diff --git a/crawl-ref/source/externs.h b/crawl-ref/source/externs.h index 14707eeeb2..0e664b8447 100644 --- a/crawl-ref/source/externs.h +++ b/crawl-ref/source/externs.h @@ -1485,7 +1485,8 @@ public: void reset_options(); void read_option_line(const std::string &s, bool runscripts = false); - void read_options(InitLineInput &, bool runscripts); + void read_options(InitLineInput &, bool runscripts, + bool clear_aliases = true); public: // View options diff --git a/crawl-ref/source/initfile.cc b/crawl-ref/source/initfile.cc index ea53949930..e6cd2746e1 100644 --- a/crawl-ref/source/initfile.cc +++ b/crawl-ref/source/initfile.cc @@ -1139,10 +1139,10 @@ void read_options(FILE *f, bool runscript) Options.read_options(fl, runscript); } -void read_options(const std::string &s, bool runscript) +void read_options(const std::string &s, bool runscript, bool clear_aliases) { StringLineInput st(s); - Options.read_options(st, runscript); + Options.read_options(st, runscript, clear_aliases); } game_options::game_options() @@ -1150,7 +1150,8 @@ game_options::game_options() reset_options(); } -void game_options::read_options(InitLineInput &il, bool runscript) +void game_options::read_options(InitLineInput &il, bool runscript, + bool clear_aliases) { unsigned int line = 0; @@ -1160,7 +1161,8 @@ void game_options::read_options(InitLineInput &il, bool runscript) bool l_init = false; - aliases.clear(); + if (clear_aliases) + aliases.clear(); std::string luacond; std::string luacode; diff --git a/crawl-ref/source/initfile.h b/crawl-ref/source/initfile.h index 5536d4bcca..c700be59ef 100644 --- a/crawl-ref/source/initfile.h +++ b/crawl-ref/source/initfile.h @@ -38,7 +38,8 @@ std::string read_init_file(bool runscript = false); void read_startup_prefs(); void read_options(FILE *f, bool runscript = false); -void read_options(const std::string &s, bool runscript = false); +void read_options(const std::string &s, bool runscript = false, + bool clear_aliases = false); void parse_option_line(const std::string &line, bool runscript = false); |