diff -r 14754bf06654 -r cf1b3ddbe9a1 bearermanagement/S60MCPR/src/s60mcprerrorrecoveryactivity.cpp --- a/bearermanagement/S60MCPR/src/s60mcprerrorrecoveryactivity.cpp Wed Sep 15 12:38:40 2010 +0300 +++ b/bearermanagement/S60MCPR/src/s60mcprerrorrecoveryactivity.cpp Wed Oct 13 14:59:48 2010 +0300 @@ -113,6 +113,31 @@ iContext.iNodeActivity->SetError( KErrGeneral ); } +#ifdef _DEBUG + // Purely for debugging purposes + CS60MetaConnectionProvider& node = (CS60MetaConnectionProvider&)iContext.Node(); + if ( node.IsGoneDownRecoveryOngoing() ) + { + // This transition is done in both connection start recovery and in + // gone down recovery. If we are running gone down recovery, there + // are two possible options what can happen next: + // 1) If we are running mobility activity, the error can be ignored + // if there is another carrier available. In this case MPM will + // send a preffered carrier available soon after. + // 2) In all other cases, the only way forward is error propagation + // (see gone down activity for further info). In this case, the + // gone down error is sent to clients and connection will be + // teared down. + // + // In both cases, the GoneDownRecoveryOngoing flag is not cleared. + // For case 1) above, it will be cleared after the connection has + // roamed, and for option 2) it is pretty much irrelevant (we can + // probably avoid a couple of race conditions by leaving the flag + // active for the time being. + S60MCPRLOGSTRING1("S60MCPR<%x>::TNoTagOrIgnoreErrorOrErrorTag::TransitionTag() MPM response while GoneDown recovery active",(TInt*)&iContext.Node()); + } +#endif + // Error transition // if ( !msg )