浏览代码

For more reliability delete old files recursively in migration cleanup

Bartosz Przybylski 9 年之前
父节点
当前提交
cec707b582
共有 1 个文件被更改,包括 10 次插入1 次删除
  1. 10 1
      src/com/owncloud/android/ui/activity/StorageMigrationActivity.java

+ 10 - 1
src/com/owncloud/android/ui/activity/StorageMigrationActivity.java

@@ -240,10 +240,19 @@ public class StorageMigrationActivity extends AppCompatActivity {
 
 		void cleanup() {
 			File srcFile = new File(mStorageSource + File.separator + MainApp.getDataFolder());
-			if (!srcFile.delete())
+			if (!deleteRecursive(srcFile))
 				Log_OC.w(TAG, "Migration cleanup step failed");
 		}
 
+		boolean deleteRecursive(File f) {
+			boolean res = true;
+			if (f.isDirectory())
+				for (File c : f.listFiles())
+					res = deleteRecursive(c) && res;
+			return f.delete() && res;
+		}
+
+
 		void rollback() {
 			File dstFile = new File(mStorageTarget + File.separator + MainApp.getDataFolder());
 			if (dstFile.exists())