diff --git a/core/src/main/java/lucee/runtime/config/ConfigWebFactory.java b/core/src/main/java/lucee/runtime/config/ConfigWebFactory.java index e56e394de3..6bfd7eea18 100644 --- a/core/src/main/java/lucee/runtime/config/ConfigWebFactory.java +++ b/core/src/main/java/lucee/runtime/config/ConfigWebFactory.java @@ -3529,8 +3529,23 @@ private static void _loadUpdate(ConfigServer configServer, Config config, Struct * @param doc */ private static void _loadAdminMode(ConfigServerImpl config, Struct root) { - config.setAdminMode( - ConfigWebUtil.toAdminMode(getAttr(root, "mode"), Caster.toShortValue(SystemUtil.getSystemPropOrEnvVar("lucee.admin.mode", null), ConfigImpl.ADMINMODE_SINGLE))); + final short undefined = -1; + short am = undefined; + + // force by env var + String str = SystemUtil.getSystemPropOrEnvVar("lucee.admin.mode", null); + if (!StringUtil.isEmpty(str, true)) { + am = ConfigWebUtil.toAdminMode(str, undefined); + } + + // when not forced + if (am == undefined) { + am = ConfigWebUtil.toAdminMode(getAttr(root, "mode"), undefined); + if (am == undefined) { + am = ConfigWebUtil.toAdminMode(SystemUtil.getSystemPropOrEnvVar("lucee.admin.mode.default", null), ConfigImpl.ADMINMODE_SINGLE); + } + } + config.setAdminMode(am); } private static void _loadSetting(ConfigServerImpl configServer, ConfigImpl config, Struct root, Log log) { diff --git a/loader/build.xml b/loader/build.xml index f29d3954e1..7b1ea109c6 100644 --- a/loader/build.xml +++ b/loader/build.xml @@ -2,7 +2,7 @@ - + diff --git a/loader/pom.xml b/loader/pom.xml index bdf3555ef8..8e305b541e 100644 --- a/loader/pom.xml +++ b/loader/pom.xml @@ -3,7 +3,7 @@ org.lucee lucee - 6.1.1.53-SNAPSHOT + 6.1.1.54-SNAPSHOT jar Lucee Loader Build