diff options
author | Alexander Harkness <me@bearbin.net> | 2016-04-13 08:05:11 +0200 |
---|---|---|
committer | Alexander Harkness <me@bearbin.net> | 2016-04-13 08:05:11 +0200 |
commit | 8447e4e333b075cf9f26e5be081ff4797b4aef6b (patch) | |
tree | fd7d5a8d3205de6643a5ad61e211dc6194ce56b6 /src | |
parent | Merge pull request #3133 from LogicParrot/readme10 (diff) | |
parent | Fixed port override code. (diff) | |
download | cuberite-8447e4e333b075cf9f26e5be081ff4797b4aef6b.tar cuberite-8447e4e333b075cf9f26e5be081ff4797b4aef6b.tar.gz cuberite-8447e4e333b075cf9f26e5be081ff4797b4aef6b.tar.bz2 cuberite-8447e4e333b075cf9f26e5be081ff4797b4aef6b.tar.lz cuberite-8447e4e333b075cf9f26e5be081ff4797b4aef6b.tar.xz cuberite-8447e4e333b075cf9f26e5be081ff4797b4aef6b.tar.zst cuberite-8447e4e333b075cf9f26e5be081ff4797b4aef6b.zip |
Diffstat (limited to 'src')
-rw-r--r-- | src/IniFile.cpp | 3 | ||||
-rw-r--r-- | src/OverridesSettingsRepository.cpp | 30 | ||||
-rw-r--r-- | src/main.cpp | 8 |
3 files changed, 14 insertions, 27 deletions
diff --git a/src/IniFile.cpp b/src/IniFile.cpp index 4a1c8e735..6b9bc9951 100644 --- a/src/IniFile.cpp +++ b/src/IniFile.cpp @@ -963,6 +963,3 @@ AStringVector ReadUpgradeIniPorts( return Ports; } - - - diff --git a/src/OverridesSettingsRepository.cpp b/src/OverridesSettingsRepository.cpp index 9e85abce6..f3db96a5c 100644 --- a/src/OverridesSettingsRepository.cpp +++ b/src/OverridesSettingsRepository.cpp @@ -108,31 +108,26 @@ std::vector<std::pair<AString, AString>> cOverridesSettingsRepository::GetValues { auto overrides = m_Overrides->GetValues(a_keyName); auto main = m_Main->GetValues(a_keyName); - std::sort(overrides.begin(), overrides.end(), [](std::pair<AString, AString> a, std::pair<AString, AString> b) -> bool { return a < b ;}); - std::sort(main.begin(), main.end(), [](std::pair<AString, AString> a, std::pair<AString, AString> b) -> bool { return a < b ;}); - std::vector<std::pair<AString, AString>> ret; + auto ret = overrides; - - size_t overridesIndex = 0; - for (auto pair : main) + for (const auto & mainpair : main) { - if (overridesIndex >= overrides.size()) - { - ret.push_back(pair); - continue; - } - if (pair.first == overrides[overridesIndex].first) + bool found = false; + for (const auto & returnpair : ret) { - continue; + if (returnpair.first == mainpair.first) + { + found = true; + break; + } } - while (pair.first > overrides[overridesIndex].first) + if (found == false) { - ret.push_back(overrides[overridesIndex]); - overridesIndex++; + ret.push_back(mainpair); } - ret.push_back(pair); } + return ret; } @@ -270,4 +265,3 @@ bool cOverridesSettingsRepository::Flush() { return m_Overrides->Flush() && m_Main->Flush(); } - diff --git a/src/main.cpp b/src/main.cpp index 76af90cde..2c277d732 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -371,7 +371,7 @@ static std::unique_ptr<cMemorySettingsRepository> ParseArguments(int argc, char // Parse the comand line args: TCLAP::CmdLine cmd("Cuberite"); TCLAP::ValueArg<int> slotsArg ("s", "max-players", "Maximum number of slots for the server to use, overrides setting in setting.ini", false, -1, "number", cmd); - TCLAP::MultiArg<int> portsArg ("p", "port", "The port number the server should listen to", false, "port", cmd); + TCLAP::MultiArg<int> portsArg ("p", "port", "The port numbers the server should listen to", false, "port", cmd); TCLAP::SwitchArg commLogArg ("", "log-comm", "Log server client communications to file", cmd); TCLAP::SwitchArg commLogInArg ("", "log-comm-in", "Log inbound server client communications to file", cmd); TCLAP::SwitchArg commLogOutArg ("", "log-comm-out", "Log outbound server client communications to file", cmd); @@ -392,7 +392,7 @@ static std::unique_ptr<cMemorySettingsRepository> ParseArguments(int argc, char { for (auto port: portsArg.getValue()) { - repo->AddValue("Server", "Port", static_cast<Int64>(port)); + repo->AddValue("Server", "Ports", static_cast<Int64>(port)); } } if (commLogArg.getValue()) @@ -555,7 +555,3 @@ int main(int argc, char ** argv) return EXIT_SUCCESS; } - - - - |