|
|
|
@ -207,7 +207,7 @@ namespace client
|
|
|
|
|
|
|
|
|
|
//---------------------------------------------------------------------
|
|
|
|
|
AddressBook::AddressBook (): m_Storage(nullptr), m_IsLoaded (false), m_IsDownloading (false),
|
|
|
|
|
m_DefaultSubscription (nullptr), m_SubscriptionsUpdateTimer (nullptr)
|
|
|
|
|
m_NumRetries (0), m_DefaultSubscription (nullptr), m_SubscriptionsUpdateTimer (nullptr)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -486,9 +486,13 @@ namespace client
|
|
|
|
|
void AddressBook::DownloadComplete (bool success, const i2p::data::IdentHash& subscription, const std::string& etag, const std::string& lastModified)
|
|
|
|
|
{
|
|
|
|
|
m_IsDownloading = false;
|
|
|
|
|
int nextUpdateTimeout = CONTINIOUS_SUBSCRIPTION_RETRY_TIMEOUT;
|
|
|
|
|
m_NumRetries++;
|
|
|
|
|
int nextUpdateTimeout = m_NumRetries*CONTINIOUS_SUBSCRIPTION_RETRY_TIMEOUT;
|
|
|
|
|
if (m_NumRetries > CONTINIOUS_SUBSCRIPTION_MAX_NUM_RETRIES || nextUpdateTimeout > CONTINIOUS_SUBSCRIPTION_UPDATE_TIMEOUT)
|
|
|
|
|
nextUpdateTimeout = CONTINIOUS_SUBSCRIPTION_UPDATE_TIMEOUT;
|
|
|
|
|
if (success)
|
|
|
|
|
{
|
|
|
|
|
m_NumRetries = 0;
|
|
|
|
|
if (m_DefaultSubscription) m_DefaultSubscription = nullptr;
|
|
|
|
|
if (m_IsLoaded)
|
|
|
|
|
nextUpdateTimeout = CONTINIOUS_SUBSCRIPTION_UPDATE_TIMEOUT;
|
|
|
|
|