diff options
author | Alex Zolotarev <alex@maps.me> | 2015-07-29 16:03:49 +0300 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 02:58:09 +0300 |
commit | 1729c30fcb8bd453b7c612790a0929de61f35757 (patch) | |
tree | be233300ae317212085d3de54a5c2f1674dabb84 /platform/servers_list.cpp | |
parent | 7ccf4a90bdb54e0d038bd77d9da32e5f757581d6 (diff) |
Do not store good servers list in the settings. Otherwise if servers have changed, old outdated servers will be loaded from settings and downloading will fail.
Diffstat (limited to 'platform/servers_list.cpp')
-rw-r--r-- | platform/servers_list.cpp | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/platform/servers_list.cpp b/platform/servers_list.cpp index ed72ea3937..f705a6f3f2 100644 --- a/platform/servers_list.cpp +++ b/platform/servers_list.cpp @@ -8,13 +8,10 @@ #include "3party/jansson/myjansson.hpp" - -#define SETTINGS_SERVERS_KEY "LastBaseUrls" - - namespace downloader { +// Returns false if can't parse urls. Note that it also clears outUrls. bool ParseServerList(string const & jsonStr, vector<string> & outUrls) { outUrls.clear(); @@ -37,20 +34,15 @@ bool ParseServerList(string const & jsonStr, vector<string> & outUrls) void GetServerListFromRequest(HttpRequest const & request, vector<string> & urls) { - if (request.Status() == HttpRequest::ECompleted && - ParseServerList(request.Data(), urls)) + if (request.Status() == HttpRequest::ECompleted && ParseServerList(request.Data(), urls)) { - Settings::Set(SETTINGS_SERVERS_KEY, request.Data()); + return; } else { - LOG(LWARNING, ("Can't get servers list from request")); - - string serverList; - if (!Settings::Get(SETTINGS_SERVERS_KEY, serverList)) - serverList = GetPlatform().DefaultUrlsJSON(); - VERIFY ( ParseServerList(serverList, urls), () ); + VERIFY(ParseServerList(GetPlatform().DefaultUrlsJSON(), urls), ()); + LOG(LWARNING, ("Can't get servers list from request, using default servers:", urls)); } } -} +} // namespace downloader |