X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=getdown%2Fsrc%2Fgetdown%2Fcore%2Fsrc%2Fmain%2Fjava%2Fcom%2Fthreerings%2Fgetdown%2Fdata%2FApplication.java;h=435ebbd79af662ce55cc90ae336208b48c898b1f;hb=8df69d4d97f679782211d786a746d37f067cf3f1;hp=2022750c3a7d3b543d07a48cb13ff38170143685;hpb=0fd3b7ae342185573d564705d087f7e6d2abd78c;p=jalview.git diff --git a/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java b/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java index 2022750..435ebbd 100644 --- a/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java +++ b/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java @@ -31,7 +31,7 @@ import java.util.zip.GZIPInputStream; import jalview.bin.HiDPISetting; import jalview.bin.MemorySetting; -//import com.install4j.api.launcher.Variables; +import jalview.util.LaunchUtils; import com.threerings.getdown.util.*; // avoid ambiguity with java.util.Base64 which we can't use as it's 1.8+ @@ -1085,6 +1085,9 @@ public class Application log.info("Not setting proxy"); } + // add the getdowninstanceappbase property. getdownappdir is added by getdown.txt + args.add("-Dgetdowninstanceappbase=" + getAppbase().toString()); + // add the marker indicating the app is running in getdown args.add("-D" + Properties.GETDOWN + "=true"); args.add("-Dsys.install4jVersion=" + Application.i4jVersion); @@ -1134,7 +1137,6 @@ public class Application String query = jalviewUri.getQuery(); _appargs.clear(); - _appargs.add("-open"); if (host != null && host.length() > 0) { URL newUrl = new URL( (https?"https":"http") @@ -1181,6 +1183,17 @@ public class Application continue; } } + + // use saved preferences if no cmdline args + LaunchUtils.loadChannelProps(getAppDir()); + if (LaunchUtils.getBooleanUserPreference(MemorySetting.CUSTOMISED_SETTINGS)) { + if (jvmmempc == null) { + jvmmempc = LaunchUtils.getUserPreference(MemorySetting.MEMORY_JVMMEMPC); + } + if (jvmmemmax == null) { + jvmmemmax = LaunchUtils.getUserPreference(MemorySetting.MEMORY_JVMMEMMAX); + } + } // add the memory setting from jvmmempc and jvmmemmax long maxMemLong = -1; @@ -1237,10 +1250,8 @@ public class Application if (j > -1) { ext = filename.substring(j+1); } - if (ext != null && LOCATOR_FILE_EXTENSION.equals(ext.toLowerCase())) { + if (ext != null && LOCATOR_FILE_EXTENSION.equals(ext.toLowerCase(Locale.ROOT))) { // this file extension should have been dealt with in Getdown class - } else { - _appargs.add(0, "-open"); } } @@ -1253,7 +1264,9 @@ public class Application String[] sargs = args.toArray(new String[args.size()]); log.info("Running " + StringUtil.join(sargs, "\n ")); - return Runtime.getRuntime().exec(sargs, envp, getAppDir()); + // don't set the working dir, leave it the same as the working dir of the invocation + //return Runtime.getRuntime().exec(sargs, envp, getAppDir()); + return Runtime.getRuntime().exec(sargs, envp); } /** @@ -1984,7 +1997,7 @@ public class Application String locatorFilename = filenames.length >= 1 ? filenames[0] : null; if ( !StringUtil.isBlank(locatorFilename) - && locatorFilename.toLowerCase().endsWith("."+Application.LOCATOR_FILE_EXTENSION) + && locatorFilename.toLowerCase(Locale.ROOT).endsWith("."+Application.LOCATOR_FILE_EXTENSION) ) { setLocatorFile(locatorFilename); // remove the locator filename from the filenames array @@ -1998,7 +2011,7 @@ public class Application // skip any other locator files in a multiple file list if (filename.startsWith("jalview://") || filename.startsWith("jalviews://")) { setJalviewUri(filename); - } else if (! filename.toLowerCase().endsWith("."+Application.LOCATOR_FILE_EXTENSION)) { + } else if (! filename.toLowerCase(Locale.ROOT).endsWith("."+Application.LOCATOR_FILE_EXTENSION)) { addStartupFile(filename); } }