Fix language fallbacks for rules not being available early

Fixes #1483
This commit is contained in:
altrisi authored and GitHub committed 2022-07-07 11:45:37 +02:00
1 parent d571d61938
commit 5a4ceb68c6
1 file changed
+4 -2
@@ -174,8 +174,6 @@ public class SettingsManager {
*/ */
public void parseSettingsClass(Class<?> settingsClass) public void parseSettingsClass(Class<?> settingsClass)
{ {
// In the current translation system languages are not loaded this early. Ensure they are loaded
Translations.updateLanguage();
boolean warned = settingsClass == CarpetSettings.class; // don't warn for ourselves boolean warned = settingsClass == CarpetSettings.class; // don't warn for ourselves
nextRule: for (Field field : settingsClass.getDeclaredFields()) nextRule: for (Field field : settingsClass.getDeclaredFields())
@@ -212,6 +210,10 @@ public class SettingsManager {
CarpetRule<?> parsed = ParsedRule.of(field, this); CarpetRule<?> parsed = ParsedRule.of(field, this);
rules.put(parsed.name(), parsed); rules.put(parsed.name(), parsed);
} }
// In the current translation system languages are not loaded this early. Ensure they are loaded
// after we've added fallbacks, else early systems such as the rule printer won't function for
// legacy rules given the validator (that triggers adding fallbacks normally) won't have ran
Translations.updateLanguage();
} }
/** /**