Browse Source

Replaced own walkFileTree with correct implementation from nnio package.
This prevents a NullPointerException on the case, that listFiles() returns a null pointer,
as that is allowed per spec.

Signed-off-by: Benedek Major <benedek@major.onl>

Benedek Major 1 year ago
parent
commit
801e00cf82

+ 0 - 20
app/src/main/java/com/owncloud/android/utils/FileUtil.java

@@ -12,11 +12,6 @@ import android.text.TextUtils;
 import com.owncloud.android.lib.common.utils.Log_OC;
 import com.owncloud.android.lib.resources.files.UploadFileRemoteOperation;
 
-import org.lukhnos.nnio.file.FileVisitResult;
-import org.lukhnos.nnio.file.FileVisitor;
-import org.lukhnos.nnio.file.Path;
-import org.lukhnos.nnio.file.impl.FileBasedPathImpl;
-
 import java.io.File;
 import java.io.IOException;
 import java.nio.file.Files;
@@ -68,19 +63,4 @@ public final class FileUtil {
             return null;
         }
     }
-
-    public static Path walkFileTree(Path start, FileVisitor<? super Path> visitor) throws IOException {
-        if (org.lukhnos.nnio.file.Files.isDirectory(start)) {
-            org.lukhnos.nnio.file.FileVisitResult preVisitDirectoryResult = visitor.preVisitDirectory(start, null);
-            if (preVisitDirectoryResult == FileVisitResult.CONTINUE) {
-                for (File child : start.toFile().listFiles()) {
-                    walkFileTree(FileBasedPathImpl.get(child), visitor);
-                }
-            }
-            visitor.postVisitDirectory(start, null);
-        } else {
-            visitor.visitFile(start, new org.lukhnos.nnio.file.attribute.BasicFileAttributes(start.toFile()));
-        }
-        return start;
-    }
 }

+ 2 - 1
app/src/main/java/com/owncloud/android/utils/FilesSyncHelper.java

@@ -36,6 +36,7 @@ import org.lukhnos.nnio.file.Path;
 import org.lukhnos.nnio.file.Paths;
 import org.lukhnos.nnio.file.SimpleFileVisitor;
 import org.lukhnos.nnio.file.attribute.BasicFileAttributes;
+import org.lukhnos.nnio.file.Files;
 
 import java.io.File;
 import java.io.IOException;
@@ -63,7 +64,7 @@ public final class FilesSyncHelper {
         final long enabledTimestampMs = syncedFolder.getEnabledTimestampMs();
 
         try {
-            FileUtil.walkFileTree(path, new SimpleFileVisitor<>() {
+            Files.walkFileTree(path, new SimpleFileVisitor<>() {
                 @Override
                 public FileVisitResult visitFile(Path path, BasicFileAttributes attrs) {
                     File file = path.toFile();