diff -r 271e901a9423 -r 4cc0d1a608c1 launcher/engine/src/launcherengine.cpp --- a/launcher/engine/src/launcherengine.cpp Fri May 14 16:10:39 2010 +0300 +++ b/launcher/engine/src/launcherengine.cpp Tue Jun 01 14:40:54 2010 +0300 @@ -1033,7 +1033,7 @@ if (iBCLogFile.Open(iEnv->FsSession(), iBCLogFilePath, EFileWrite) != KErrNone) { iEnv->FsSession().MkDirAll(iLogFilePath); - iBCLogFile.Replace(iEnv->FsSession(), iBCLogFilePath, EFileWrite); + User::LeaveIfError( iBCLogFile.Replace(iEnv->FsSession(), iBCLogFilePath, EFileWrite) ); } else { @@ -1099,9 +1099,14 @@ void CLauncherEngine::CancelBCAnalysis() { LOGSTRING("Launcher: CLauncherEngine::CancelBCAnalysis"); - iXMLParser->Cancel(); + if( iXMLParser ) + { + iXMLParser->Cancel(); + } iLauncherUI->PrintText(_L("\nAnalysis cancelled.\n\n")); - + WriteInitialStuffToTheLogL(_L("Analysis cancelled by user"), iBCLogFile); + iLogWriteBuf->Des().Zero(); + iBCLogFile.Close(); } // ---------------------------------------------------------------------------