From 363ed4ac4b632ba59ce45abcc0064569137fb0cd Mon Sep 17 00:00:00 2001 From: Sebastian Stenzel Date: Wed, 17 Aug 2016 18:52:08 +0200 Subject: [PATCH] Accept paths beginning with "~" in cryptomator.settingsPath JVM arg. [ci skip] --- .../org/cryptomator/ui/settings/SettingsProvider.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/main/ui/src/main/java/org/cryptomator/ui/settings/SettingsProvider.java b/main/ui/src/main/java/org/cryptomator/ui/settings/SettingsProvider.java index 6f752512d..5617815d3 100644 --- a/main/ui/src/main/java/org/cryptomator/ui/settings/SettingsProvider.java +++ b/main/ui/src/main/java/org/cryptomator/ui/settings/SettingsProvider.java @@ -65,7 +65,15 @@ public class SettingsProvider implements Provider { private Path getSettingsPath() throws IOException { final String settingsPathProperty = System.getProperty("cryptomator.settingsPath"); - return Optional.ofNullable(settingsPathProperty).filter(StringUtils::isNotBlank).map(FileSystems.getDefault()::getPath).orElse(DEFAULT_SETTINGS_PATH); + return Optional.ofNullable(settingsPathProperty).filter(StringUtils::isNotBlank).map(this::replaceHomeDir).map(FileSystems.getDefault()::getPath).orElse(DEFAULT_SETTINGS_PATH); + } + + private String replaceHomeDir(String path) { + if (path.startsWith("~/")) { + return SystemUtils.USER_HOME + path.substring(1); + } else { + return path; + } } @Override