diff -r 2e6c4614c58e -r ea6e024ea6f9 cmmanager/cmmgr/Framework/Src/cmwizard.cpp --- a/cmmanager/cmmgr/Framework/Src/cmwizard.cpp Fri Feb 19 23:12:51 2010 +0200 +++ b/cmmanager/cmmgr/Framework/Src/cmwizard.cpp Fri Mar 12 15:44:18 2010 +0200 @@ -298,6 +298,12 @@ iCheckConnDlgCancelled = ETrue; } } + + if ( iWait.IsStarted() ) + { + iWait.AsyncStop(); + } + iCheckConnDlg = NULL; } // --------------------------------------------------------------------------- @@ -386,16 +392,21 @@ if( !iCheckConnDlgCancelled ) { CLOG_WRITE( "CCmWizard::CheckForCms, cancelling wait dlg" ); - iCheckConnDlg->SetCallback( NULL ); iCheckConnDlg->ProcessFinishedL(); + + // Wait here in case wait note has not yet been dismissed. + // This happens in hw when Themes/effects is enabled. + if ( iCheckConnDlg != NULL ) + { + iWait.Start(); + } CLOG_WRITE( "CCmWizard::CheckForCms, wait dialog deleted" ); } else { CLOG_WRITE( "CCmWizard::CheckForCms, wait dlg was already cancelled" ); } - - + // Set the member to NULL every case iCheckConnDlg = NULL; }