diff --git a/core/src/main/java/com/threerings/getdown/data/Application.java b/core/src/main/java/com/threerings/getdown/data/Application.java index fd7ec54..997c908 100644 --- a/core/src/main/java/com/threerings/getdown/data/Application.java +++ b/core/src/main/java/com/threerings/getdown/data/Application.java @@ -1486,7 +1486,7 @@ public class Application * * @param sigVersion if {@code 0} no validation will be performed, if {@code > 0} then this * should indicate the version of the digest file being validated which indicates which - * algorithm to use to verify the signature. See {@link Digest#VESRION}. + * algorithm to use to verify the signature. See {@link Digest#VERSION}. */ protected void downloadControlFile (String path, int sigVersion) throws IOException diff --git a/core/src/main/java/com/threerings/getdown/data/EnvConfig.java b/core/src/main/java/com/threerings/getdown/data/EnvConfig.java index 68e988a..30c1578 100644 --- a/core/src/main/java/com/threerings/getdown/data/EnvConfig.java +++ b/core/src/main/java/com/threerings/getdown/data/EnvConfig.java @@ -53,7 +53,7 @@ public final class EnvConfig { String appDir = null, appDirProv = null; String appId = null, appIdProv = null; String appBase = null, appBaseProv = null; - + String[] sysargs; // start with bootstrap.properties config, if avaialble try { ResourceBundle bundle = ResourceBundle.getBundle("bootstrap"); @@ -70,6 +70,22 @@ public final class EnvConfig { appBase = bundle.getString("appbase"); appBaseProv = "bootstrap.properties"; } + + // Set system properties. Should be in the form: + // sysargs = [key1]:[val1] , [key2]:[val2], [key3] + if (bundle.containsKey("sysargs")) { + sysargs = bundle.getString("sysargs").split(","); + + for (String sysarg : sysargs) { + String[] arg_value = sysarg.trim().split(":", 2); + if(arg_value.length == 2){ + System.setProperty(arg_value[0], arg_value[1]); + }else if(arg_value.length == 1) { + System.setProperty(arg_value[0], ""); + } + } + } + } catch (MissingResourceException e) { // bootstrap.properties is optional; no need for a warning }