diff --git a/server/core/config.cc b/server/core/config.cc index b0356373b..e24f97f91 100644 --- a/server/core/config.cc +++ b/server/core/config.cc @@ -4535,6 +4535,10 @@ bool config_param_is_valid(const MXS_MODULE_PARAM* params, /** Either the only defined enum value is not valid * or multiple values were defined */ valid = false; + } + + if (!valid) + { break; } } diff --git a/server/core/test/test_config.cc b/server/core/test/test_config.cc index 6fcd33584..c21df1148 100644 --- a/server/core/test/test_config.cc +++ b/server/core/test/test_config.cc @@ -91,6 +91,7 @@ int test_validity() TEST(config_param_is_valid(params, "p5", "c,a,b", &ctx)); TEST(!config_param_is_valid(params, "p5", "d", &ctx)); TEST(!config_param_is_valid(params, "p5", "a,d", &ctx)); + TEST(!config_param_is_valid(params, "p5", "d,a", &ctx)); TEST(!config_param_is_valid(params, "p5", "a,b,c,d", &ctx)); /** Path parameter */