MCPcopy Create free account
hub / github.com/Icinga/icinga2 / CompareVersion

Method CompareVersion

lib/base/utility.cpp:1402–1421  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1400}
1401
1402int Utility::CompareVersion(const String& v1, const String& v2)
1403{
1404 std::vector<String> tokensv1 = v1.Split(".");
1405 std::vector<String> tokensv2 = v2.Split(".");
1406
1407 for (std::vector<String>::size_type i = 0; i < tokensv2.size() - tokensv1.size(); i++)
1408 tokensv1.emplace_back("0");
1409
1410 for (std::vector<String>::size_type i = 0; i < tokensv1.size() - tokensv2.size(); i++)
1411 tokensv2.emplace_back("0");
1412
1413 for (std::vector<String>::size_type i = 0; i < tokensv1.size(); i++) {
1414 if (Convert::ToLong(tokensv2[i]) > Convert::ToLong(tokensv1[i]))
1415 return 1;
1416 else if (Convert::ToLong(tokensv2[i]) < Convert::ToLong(tokensv1[i]))
1417 return -1;
1418 }
1419
1420 return 0;
1421}
1422
1423String Utility::GetHostName()
1424{

Callers

nothing calls this directly

Calls 2

SplitMethod · 0.80
sizeMethod · 0.45

Tested by

no test coverage detected