diff --git a/main/launcher/src/main/java/org/cryptomator/launcher/MainApplication.java b/main/launcher/src/main/java/org/cryptomator/launcher/MainApplication.java
index 8ee283c36..c62f624c4 100644
--- a/main/launcher/src/main/java/org/cryptomator/launcher/MainApplication.java
+++ b/main/launcher/src/main/java/org/cryptomator/launcher/MainApplication.java
@@ -5,15 +5,12 @@
*******************************************************************************/
package org.cryptomator.launcher;
+import javafx.application.Application;
+import javafx.stage.Stage;
import org.cryptomator.ui.controllers.MainController;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javafx.application.Application;
-import javafx.application.Platform;
-import javafx.fxml.FXMLLoader;
-import javafx.stage.Stage;
-
public class MainApplication extends Application {
private static final Logger LOG = LoggerFactory.getLogger(MainApplication.class);
diff --git a/main/pom.xml b/main/pom.xml
index 7ab33380a..148c9897e 100644
--- a/main/pom.xml
+++ b/main/pom.xml
@@ -24,20 +24,20 @@
UTF-8
- 1.2.0
- 1.5.2
+ 1.2.1
+ 1.6.0
2.0.0
- 0.1.5
- 0.1.2
- 1.0.4
+ 1.0.0
+ 1.0.0
+ 1.0.5
2.5
3.6
1.0.3
- 25.1-jre
- 2.16
+ 26.0-jre
+ 2.17
2.8.5
1.7.25
@@ -45,7 +45,7 @@
4.12
4.12.1
- 2.19.0
+ 2.23.0
1.3
@@ -288,7 +288,7 @@
org.jacoco
jacoco-maven-plugin
- 0.8.1
+ 0.8.2
prepare-agent
@@ -315,15 +315,11 @@
maven-compiler-plugin
- 3.7.0
+ 3.8.0
10
10
10
-
- --add-modules
- jdk.incubator.httpclient
-
com.google.dagger
diff --git a/main/ui/src/main/java/org/cryptomator/ui/model/DokanyVolume.java b/main/ui/src/main/java/org/cryptomator/ui/model/DokanyVolume.java
index 35aff5bcb..f986b6e3f 100644
--- a/main/ui/src/main/java/org/cryptomator/ui/model/DokanyVolume.java
+++ b/main/ui/src/main/java/org/cryptomator/ui/model/DokanyVolume.java
@@ -1,6 +1,7 @@
package org.cryptomator.ui.model;
import javax.inject.Inject;
+import java.nio.file.Paths;
import java.util.Set;
import java.util.concurrent.ExecutorService;
@@ -9,6 +10,7 @@ import org.cryptomator.common.settings.VaultSettings;
import org.cryptomator.cryptofs.CryptoFileSystem;
import org.cryptomator.frontend.dokany.Mount;
import org.cryptomator.frontend.dokany.MountFactory;
+import org.cryptomator.frontend.dokany.MountFailedException;
public class DokanyVolume implements Volume {
@@ -50,7 +52,11 @@ public class DokanyVolume implements Volume {
}
}
String mountName = vaultSettings.mountName().get();
- this.mount = mountFactory.mount(fs.getPath("/"), driveLetter, mountName, FS_TYPE_NAME);
+ try {
+ this.mount = mountFactory.mount(fs.getPath("/"), Paths.get(driveLetter + ":\\") , mountName, FS_TYPE_NAME);
+ } catch (MountFailedException e) {
+ throw new VolumeException("Unable to mount Filesystem", e);
+ }
}
@Override
diff --git a/main/ui/src/main/java/org/cryptomator/ui/model/UpgradeVersion3to4.java b/main/ui/src/main/java/org/cryptomator/ui/model/UpgradeVersion3to4.java
index 3c9e6aa2e..cb0981d52 100644
--- a/main/ui/src/main/java/org/cryptomator/ui/model/UpgradeVersion3to4.java
+++ b/main/ui/src/main/java/org/cryptomator/ui/model/UpgradeVersion3to4.java
@@ -5,8 +5,8 @@
*******************************************************************************/
package org.cryptomator.ui.model;
-import static java.nio.charset.StandardCharsets.UTF_8;
-
+import javax.inject.Inject;
+import javax.inject.Singleton;
import java.io.IOException;
import java.nio.file.FileVisitOption;
import java.nio.file.FileVisitResult;
@@ -19,11 +19,7 @@ import java.util.EnumSet;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import javax.inject.Inject;
-import javax.inject.Singleton;
-
-import org.apache.commons.codec.binary.Base32;
-import org.apache.commons.codec.binary.BaseNCodec;
+import com.google.common.io.BaseEncoding;
import org.apache.commons.lang3.StringUtils;
import org.cryptomator.cryptolib.Cryptors;
import org.cryptomator.cryptolib.api.Cryptor;
@@ -32,6 +28,8 @@ import org.cryptomator.ui.l10n.Localization;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import static java.nio.charset.StandardCharsets.UTF_8;
+
/**
* Contains the collective knowledge of all creatures who were alive during the development of vault format 3.
* This class uses no external classes from the crypto or shortening layer by purpose, so we don't need legacy code inside these.
@@ -50,7 +48,7 @@ class UpgradeVersion3to4 extends UpgradeStrategy {
private static final String NEW_FOLDER_PREFIX = "0";
private final MessageDigest sha1 = MessageDigestSupplier.SHA1.get();
- private final BaseNCodec base32 = new Base32();
+ private final BaseEncoding base32 = BaseEncoding.base32();
@Inject
public UpgradeVersion3to4(Localization localization) {
@@ -155,7 +153,7 @@ class UpgradeVersion3to4 extends UpgradeStrategy {
String oldLongName = new String(Files.readAllBytes(oldMetadataFile), UTF_8);
if (oldLongName.endsWith(OLD_FOLDER_SUFFIX)) {
String newLongName = NEW_FOLDER_PREFIX + StringUtils.removeEnd(oldLongName, OLD_FOLDER_SUFFIX);
- String newCanonicalBase32 = base32.encodeAsString(sha1.digest(newLongName.getBytes(UTF_8)));
+ String newCanonicalBase32 = base32.encode(sha1.digest(newLongName.getBytes(UTF_8)));
String newCanonicalName = newCanonicalBase32 + LONG_FILENAME_EXT;
Path newMetadataFile = metadataDir.resolve(newCanonicalName.substring(0, 2)).resolve(newCanonicalName.substring(2, 4)).resolve(newCanonicalName);
String newName = newCanonicalBase32 + oldNameSuffix + LONG_FILENAME_EXT;