diff -r ada7962b4308 -r 15bc28c9dd51 filemanager/src/fmbkupenginewrapper/private/symbian/fmbkupengine_p.cpp --- a/filemanager/src/fmbkupenginewrapper/private/symbian/fmbkupengine_p.cpp Mon May 03 12:24:39 2010 +0300 +++ b/filemanager/src/fmbkupenginewrapper/private/symbian/fmbkupengine_p.cpp Tue Aug 24 10:24:14 2010 +0800 @@ -98,18 +98,28 @@ QList backupCategoryList, QString drive, quint32 content) { + FM_LOG( "FmBkupEnginePrivate::startBackup_with drive: " + drive + + "_number:" + QString::number(DriverNameToNumber( drive ))); if( drive.isEmpty() ) { iError = KErrPathNotFound; + FM_LOG( "FmBkupEnginePrivate::startBackup_with return with KErrPathNotFound because drive is empty" ); + return false; + } + QStringList backupableDriveList; + getBackupDriveList( backupableDriveList ); + if( !backupableDriveList.contains( drive, Qt::CaseInsensitive ) ) { + iError = KErrPathNotFound; + FM_LOG( "FmBkupEnginePrivate::startBackup_with return with KErrPathNotFound because drive is not available" ); return false; } QString logString; logString = "startBackup"; - FmLogger::log( logString ); + FM_LOG( logString ); iDrvAndOpList->Reset(); iBkupCategoryList->ResetAndDestroy(); logString = "startBackup_driveroperation count:" + QString::number(drivesAndOperationList.count()); - FmLogger::log( logString ); + FM_LOG( logString ); for( QList::iterator it = drivesAndOperationList.begin(); it != drivesAndOperationList.end(); ++it ) { @@ -121,7 +131,7 @@ } logString = "startBackup_backupCategoryList count:" + QString::number(backupCategoryList.count()); - FmLogger::log( logString ); + FM_LOG( logString ); for( QList::iterator it = backupCategoryList.begin(); @@ -160,7 +170,7 @@ //TUint32 bkupContent = 63; logString = "startBackup_new param"; - FmLogger::log( logString ); + FM_LOG( logString ); CMMCScBkupOpParamsBackupFull* params = CMMCScBkupOpParamsBackupFull::NewL( @@ -173,20 +183,19 @@ logString = "startBackup_param ok"; - FmLogger::log( logString ); + FM_LOG( logString ); CCoeEnv* coeEnv = CCoeEnv::Static(); CEikonEnv* eikonEnv = (STATIC_CAST(CEikonEnv*,coeEnv)); eikonEnv->SetSystem(ETrue); logString = "startBackup_StartOperationL"; - FmLogger::log( logString ); + FM_LOG( logString ); QList< FmRestoreInfo > restoreInfoList; - TInt driveNumber = DriverNameToNumber( drive ); - GetRestoreInfoArray( drivesAndOperationList, restoreInfoList, driveNumber ); + GetRestoreInfoArray( drivesAndOperationList, restoreInfoList, drive ); - for ( TInt i( 0 ); i < restoreInfoList.count(); i++ ) + for ( TInt i( 0 ); i < restoreInfoList.count(); ++i ) { bool toContinue = false; FmRestoreInfo &info = restoreInfoList[ i ]; @@ -211,14 +220,14 @@ EMMCScBkupOperationTypeFullBackup, *this, params ) ); logString = "startBackup_end with error:" + QString::number(err) ; - FmLogger::log( logString ); + FM_LOG( logString ); return (err == KErrNone); } void FmBkupEnginePrivate::cancelBackup() { QString logString = "cancelBackup"; - FmLogger::log(logString); + FM_LOG(logString); switch( mProcess ) { case FmBkupEngine::ProcessBackup: // FALLTHROUGH @@ -399,12 +408,13 @@ break; } } - FmLogger::log( logString ); + FM_LOG( logString ); return ret; } int FmBkupEnginePrivate::error() { + FM_LOG( "FmBkupEnginePrivate::error:" + QString::number( iError ) ); switch (iError) { case KErrNone: @@ -419,6 +429,14 @@ return FmErrCancel; case KErrPathNotFound: return FmErrPathNotFound; + case KErrLocked: + return FmErrLocked; + case KErrCorrupt: + return FmErrCorrupt; + case KErrNotReady: + return FmErrNotReady; + case KErrDisMounted: + return FmErrDisMounted; default: return FmErrUnKnown; } @@ -536,8 +554,6 @@ iDrvAndOpList->AppendL( drvAndOp ); } //////// - - FmBackupSettings& bkupSettings( *( q->BackupSettingsL() ) ); // Create restore params - ownership is transferred to // secure backup engine @@ -616,6 +632,7 @@ CMMCScBkupOpParamsRestoreFull::NewL( driveReader, EBUCatAllInOne ); CleanupStack::PopAndDestroy(); // driveReader + FmBackupSettings& bkupSettings( *( q->BackupSettingsL() ) ); // Get list of all archives RPointerArray< CMMCScBkupArchiveInfo > archives; TCleanupItem cleanupItem( ResetAndDestroyArchives, &archives ); @@ -650,9 +667,9 @@ void FmBkupEnginePrivate::GetRestoreInfoArray( QList drivesAndOperationList, QList< FmRestoreInfo > &restoreInfoList, - const TInt aDrive ) + const QString& aDrive ) { - FmBackupSettings& settings( *( q->BackupSettingsL() ) ); + int targetDrive = DriverNameToNumber( aDrive ); restoreInfoList.clear(); @@ -684,7 +701,7 @@ archives, params, AllowedDriveAttMatchMask(), - aDrive ); + targetDrive ); // Fill restore info TInt count( archives.Count() ); @@ -705,7 +722,7 @@ int s = iDateTime.Second(); int year = iDateTime.Year(); int month = iDateTime.Month() + 1; - int day = iDateTime.Day(); + int day = iDateTime.Day()+1; QTime time( h, m, s); QDate date( year, month, day ); @@ -750,6 +767,9 @@ TInt FmBkupEnginePrivate::DriverNameToNumber( QString driverName ) { + if( driverName.isEmpty() ) { + return KErrNotFound; + } TInt drive = 0; drive = driverName[0].toUpper().toAscii() - 'A' + EDriveA; return drive; @@ -784,7 +804,6 @@ } } } - fs.Close(); }