diff -r a4d6f1ea0416 -r e7aa27f58ae1 emailuis/emailui/src/FreestyleEmailUiAppui.cpp --- a/emailuis/emailui/src/FreestyleEmailUiAppui.cpp Tue Jan 26 11:45:42 2010 +0200 +++ b/emailuis/emailui/src/FreestyleEmailUiAppui.cpp Tue Feb 02 00:02:40 2010 +0200 @@ -2039,10 +2039,13 @@ { FUNC_LOG; TBool ret(EFalse); - if ( !iNavigationHistory->IsEmpty() ) - { - ret = iNavigationHistory->Head()->IsNextMsgAvailable( aCurrentMsgId, aFoundNextMsgId, aFoundNextMsgFolder ); - } + if( iNavigationHistory ) + { + if ( !iNavigationHistory->IsEmpty() ) + { + ret = iNavigationHistory->Head()->IsNextMsgAvailable( aCurrentMsgId, aFoundNextMsgId, aFoundNextMsgFolder ); + } + } return ret; } @@ -2053,10 +2056,13 @@ { FUNC_LOG; TBool ret(EFalse); - if ( !iNavigationHistory->IsEmpty() ) - { - ret = iNavigationHistory->Head()->IsPreviousMsgAvailable( aCurrentMsgId, aFoundPreviousMsgId, aFoundPrevMsgFolder ); - } + if( iNavigationHistory ) + { + if ( !iNavigationHistory->IsEmpty() ) + { + ret = iNavigationHistory->Head()->IsPreviousMsgAvailable( aCurrentMsgId, aFoundPreviousMsgId, aFoundPrevMsgFolder ); + } + } return ret; } @@ -2493,12 +2499,9 @@ return KErrNone; } - if (self->iMainUiGridVisualiser) + if (!self->iMainUiGridVisualiser || self->iMainUiGridVisualiser->UiOperationLaunched()) { - if (self->iMainUiGridVisualiser->UiOperationLaunched()) - { - return KErrNone; - } + return KErrNone; } TRAPD( err, self->DisplayCreateMailboxQueryL() ); @@ -2750,7 +2753,10 @@ void CFSEmailUiAutosyncMonitor::StartMonitoring() { FUNC_LOG; + if ( IsActive() ) + { Cancel(); + } #ifdef __WINS__ // do not try to connect on the emulator iRegisterationStatus = RMobilePhone::ERegisteredOnHomeNetwork; TRequestStatus* status = &iStatus;