From 67485b76af2dda799fd160f9d7928c712333d2c9 Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Wed, 8 Jan 2020 16:50:08 +0100 Subject: [PATCH] Make sure that adding a vault located at ~/foo is noop when a vault located at /home/user/foo already exists fixes #1032 --- .../org/cryptomator/common/vaults/VaultListManager.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/main/commons/src/main/java/org/cryptomator/common/vaults/VaultListManager.java b/main/commons/src/main/java/org/cryptomator/common/vaults/VaultListManager.java index 309c8bc29..e950fd4e2 100644 --- a/main/commons/src/main/java/org/cryptomator/common/vaults/VaultListManager.java +++ b/main/commons/src/main/java/org/cryptomator/common/vaults/VaultListManager.java @@ -18,6 +18,7 @@ import org.cryptomator.cryptofs.migration.Migrators; import javax.inject.Inject; import javax.inject.Singleton; import java.io.IOException; +import java.nio.file.Files; import java.nio.file.NoSuchFileException; import java.nio.file.Path; import java.util.Collection; @@ -67,7 +68,13 @@ public class VaultListManager { } private Optional get(Path vaultPath) { - return vaultList.stream().filter(v -> v.getPath().equals(vaultPath)).findAny(); + return vaultList.stream().filter(v -> { + try { + return Files.isSameFile(vaultPath, v.getPath()); + } catch (IOException e) { + return false; + } + }).findAny(); } private Vault create(VaultSettings vaultSettings) {