diff -r 8812206c49a0 -r 1772663c5b4e filemanager/App/src/CFileManagerBackupView.cpp --- a/filemanager/App/src/CFileManagerBackupView.cpp Fri Mar 12 15:41:37 2010 +0200 +++ b/filemanager/App/src/CFileManagerBackupView.cpp Mon Mar 15 12:39:38 2010 +0200 @@ -244,17 +244,21 @@ StoreIndex(); CFileManagerBackupSettings& settings( iEngine.BackupSettingsL() ); TInt drive( settings.TargetDrive() ); - TInt MemoryCardDriveF( KFmgrMemoryCardDrive + 1 ); - //KFmgrMemoryCardDrive has been changed as Mass memory,MemoryCard is changed to F - - if( drive != MemoryCardDriveF && !IsDriveAvailable( drive ) ) - { - drive = MemoryCardDriveF; - settings.SetTargetDrive( drive ); - settings.SaveL(); - } - TFileManagerDriveInfo drvInfo; - iEngine.GetDriveInfoL( drive, drvInfo ); + TFileManagerDriveInfo drvInfo; + if( !IsDriveAvailable( drive ) ) + { + for( TInt i ( EDriveA ) ; i <= EDriveZ ; i++ ) + { + iEngine.GetDriveInfoL( i , drvInfo ); + if( ( IsDriveAvailable( i ) ) && ( drvInfo.iState & TFileManagerDriveInfo::EDriveEjectable ) ) + { + drive = i; + settings.SetTargetDrive( drive ); + settings.SaveL(); + break; + } + } + } RArray< CFileManagerRestoreSettings::TInfo > info; CleanupClosePushL( info ); iEngine.GetRestoreInfoArrayL( info, drive );