فهرست منبع

Accept paths beginning with "~" in cryptomator.settingsPath JVM arg.
[ci skip]

Sebastian Stenzel 9 سال پیش
والد
کامیت
363ed4ac4b
1فایلهای تغییر یافته به همراه9 افزوده شده و 1 حذف شده
  1. 9 1
      main/ui/src/main/java/org/cryptomator/ui/settings/SettingsProvider.java

+ 9 - 1
main/ui/src/main/java/org/cryptomator/ui/settings/SettingsProvider.java

@@ -65,7 +65,15 @@ public class SettingsProvider implements Provider<Settings> {
 
 	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