diff --git a/java_tools/ConfigDefinition.jar b/java_tools/ConfigDefinition.jar index fe55512a86..b98ae89ac4 100644 Binary files a/java_tools/ConfigDefinition.jar and b/java_tools/ConfigDefinition.jar differ diff --git a/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java b/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java index cd4e878c21..459c18480c 100644 --- a/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java +++ b/java_tools/configuration_definition/src/main/java/com/rusefi/ConfigDefinition.java @@ -121,7 +121,11 @@ public class ConfigDefinition { String keyName = args[i + 1]; // yes, we take three parameters here thus pre-increment! String fileName = args[++i + 1]; - state.variableRegistry.register(keyName, IoUtil2.readFile(fileName)); + try { + state.variableRegistry.register(keyName, IoUtil2.readFile(fileName)); + } catch (RuntimeException e) { + throw new IllegalStateException("While processing " + fileName, e); + } state.inputFiles.add(fileName); case KEY_FIRING: firingEnumFileName = args[i + 1]; diff --git a/java_tools/enum_to_string/src/main/java/com/rusefi/VariableRegistry.java b/java_tools/enum_to_string/src/main/java/com/rusefi/VariableRegistry.java index 979d26263c..5afd2a0b3e 100644 --- a/java_tools/enum_to_string/src/main/java/com/rusefi/VariableRegistry.java +++ b/java_tools/enum_to_string/src/main/java/com/rusefi/VariableRegistry.java @@ -150,10 +150,14 @@ public class VariableRegistry { } public void register(String var, String param) { - String value = doRegister(var, param); - if (value == null) - return; - tryToRegisterAsInteger(var, value); + try { + String value = doRegister(var, param); + if (value == null) + return; + tryToRegisterAsInteger(var, value); + } catch (RuntimeException e) { + throw new IllegalStateException("While [" + var + "][" + param + "]", e); + } } @Nullable @@ -165,7 +169,7 @@ public class VariableRegistry { } value = applyVariables(value); int multPosition = value.indexOf(MULT_TOKEN); - if (!isQuoted(value, '"') && multPosition != -1) { + if (!value.contains("\n") && !isQuoted(value, '"') && multPosition != -1) { Integer first = Integer.valueOf(value.substring(0, multPosition).trim()); Integer second = Integer.valueOf(value.substring(multPosition + 1).trim()); value = String.valueOf(first * second);