diff -r b5a195438f6a -r 7bc6ab9b5bcd webservices/wsoviplugin/src/wsoviserviceupdatehandler.cpp --- a/webservices/wsoviplugin/src/wsoviserviceupdatehandler.cpp Tue Feb 02 00:57:16 2010 +0200 +++ b/webservices/wsoviplugin/src/wsoviserviceupdatehandler.cpp Fri Feb 19 23:55:35 2010 +0200 @@ -139,7 +139,18 @@ { pCtx.Add(WSOviContextKeys::KServiceSession, *(MSenRemoteServiceSession*)remoteServiceSession); } - pCtx.Update(WSOviContextKeys::KReAuthNeeded, ETrue); + if( ! errFragment->Text().Compare(WSOviResponse::KEmailUsed()) || + (errFragment->Text().Compare(WSOviResponse::KMobileUsed1)!= KErrNotFound && + errFragment->Text().Compare(WSOviResponse::KMobileUsed2) != KErrNotFound ) + ) + { + pCtx.Update(WSOviContextKeys::KRetryNeeded, EFalse); + } + else + { + pCtx.Update(WSOviContextKeys::KReAuthNeeded, ETrue); + } + oviServiceSession->ClearCredentialL(); oviServiceSession->SetStatusL();//in order to compute state }