diff options
-rw-r--r-- | indra/viewer_components/updater/llupdaterservice.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/indra/viewer_components/updater/llupdaterservice.cpp b/indra/viewer_components/updater/llupdaterservice.cpp index ea242f45cd..20534fdf3a 100644 --- a/indra/viewer_components/updater/llupdaterservice.cpp +++ b/indra/viewer_components/updater/llupdaterservice.cpp @@ -375,7 +375,11 @@ void LLUpdaterServiceImpl::optionalUpdate(std::string const & newVersion, mIsDownloading = true; mUpdateDownloader.download(uri, hash, newVersion, false); - setState(LLUpdaterService::DOWNLOADING); + if(getState() != LLUpdaterService::FAILURE) { + setState(LLUpdaterService::DOWNLOADING); + } else { + ; // Download failed snynchronously; we are done. + } } void LLUpdaterServiceImpl::requiredUpdate(std::string const & newVersion, @@ -387,7 +391,11 @@ void LLUpdaterServiceImpl::requiredUpdate(std::string const & newVersion, mIsDownloading = true; mUpdateDownloader.download(uri, hash, newVersion, true); - setState(LLUpdaterService::DOWNLOADING); + if(getState() != LLUpdaterService::FAILURE) { + setState(LLUpdaterService::DOWNLOADING); + } else { + ; // Download failed snynchronously; we are done. + } } void LLUpdaterServiceImpl::upToDate(void) |