UIDefaultsLoader: check for endless recursion in resolveValue()

This commit is contained in:
Karl Tauber
2020-07-08 17:57:40 +02:00
parent 835faf9773
commit 1b974379c8

View File

@@ -212,6 +212,7 @@ class UIDefaultsLoader
static String resolveValue( String value, Function<String, String> propertiesGetter ) {
value = value.trim();
String value0 = value;
if( value.startsWith( PROPERTY_PREFIX ) )
value = value.substring( PROPERTY_PREFIX.length() );
@@ -232,6 +233,9 @@ class UIDefaultsLoader
throw new IllegalArgumentException( "variable or property '" + value + "' not found" );
}
if( newValue.equals( value0 ) )
throw new IllegalArgumentException( "endless recursion in variable or property '" + value + "'" );
return resolveValue( newValue, propertiesGetter );
}