fix CHOP-366, on temporary errors (e.g. version manager returns other than 200) show error dialog instructing the user to manually install the latest viewer.

meow-7.2.2
Andrew A. de Laix 2011-01-14 12:59:42 -08:00
parent c3fe256ef3
commit 8e4d6bb1ac
3 changed files with 7 additions and 1 deletions

View File

@ -214,6 +214,9 @@ void MandatoryUpdateMachine::start(void)
case LLUpdaterService::CHECKING_FOR_UPDATE:
setCurrentState(new CheckingForUpdate(*this));
break;
case LLUpdaterService::TEMPORARY_ERROR:
setCurrentState(new Error(*this));
break;
case LLUpdaterService::DOWNLOADING:
setCurrentState(new WaitingForDownload(*this));
break;
@ -289,6 +292,7 @@ bool MandatoryUpdateMachine::CheckingForUpdate::onEvent(LLSD const & event)
case LLUpdaterService::DOWNLOADING:
mMachine.setCurrentState(new WaitingForDownload(mMachine));
break;
case LLUpdaterService::TEMPORARY_ERROR:
case LLUpdaterService::UP_TO_DATE:
case LLUpdaterService::TERMINAL:
case LLUpdaterService::FAILURE:
@ -324,7 +328,7 @@ MandatoryUpdateMachine::Error::Error(MandatoryUpdateMachine & machine):
void MandatoryUpdateMachine::Error::enter(void)
{
llinfos << "entering error" << llendl;
LLNotificationsUtil::add("FailedUpdateInstall", LLSD(), LLSD(), boost::bind(&MandatoryUpdateMachine::Error::onButtonClicked, this, _1, _2));
LLNotificationsUtil::add("FailedRequiredUpdateInstall", LLSD(), LLSD(), boost::bind(&MandatoryUpdateMachine::Error::onButtonClicked, this, _1, _2));
}

View File

@ -361,6 +361,7 @@ void LLUpdaterServiceImpl::error(std::string const & message)
{
if(mIsChecking)
{
setState(LLUpdaterService::TEMPORARY_ERROR);
restartTimer(mCheckPeriod);
}
}

View File

@ -59,6 +59,7 @@ public:
enum eUpdaterState {
INITIAL,
CHECKING_FOR_UPDATE,
TEMPORARY_ERROR,
DOWNLOADING,
INSTALLING,
UP_TO_DATE,