[API] Nothing prevents extensions overriding existing rules, potentially causing problems to users
altrisi opened this issue ยท 1 comments
When parseSettingsClass
is executed, nothing prevents a rule having the same name as an already existing rule.
Since the behaviour of HashMap
is to replace existing keys with the new ones, that makes (usually Carpet) rules to be overridden by the extension's rules, potentially causing undefined behaviour, since Carpet may apply a value from a Carpet rule into an extension's rule, or just users finding rules don't work as expected.
That should probably throw some exception (and therefore crash), although not sure which one.
Found due to #700.