filemanager/App/src/CFileManagerBackupView.cpp
branchRCL_3
changeset 10 1772663c5b4e
parent 9 8812206c49a0
child 20 efe289f793e7
--- 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 );