return FALSE;
}
-static bool have_changed_settings(const struct config_filter_parser *parser,
- const char *const *modules)
+static bool have_changed_settings(const struct config_filter_parser *parser)
{
const unsigned char *changes;
unsigned int i, j, size;
for (i = 0; parser->parsers[i].root != NULL; i++) {
- if (!config_module_want_parser(config_module_parsers,
- modules, parser->parsers[i].root))
- continue;
-
changes = settings_parser_get_changes(parser->parsers[i].parser);
size = parser->parsers[i].root->struct_size;
for (j = 0; j < size; j++) {
static struct config_filter_parser *const *
config_filter_find_all(struct config_filter_context *ctx, pool_t pool,
- const char *const *modules,
const struct config_filter *filter,
struct master_service_settings_output *output_r)
{
if (!config_filter_match_service(mask, filter)) {
if (!str_array_contains(&service_names, mask->service) &&
- have_changed_settings(ctx->parsers[i], modules))
+ have_changed_settings(ctx->parsers[i]))
array_push_back(&service_names,
&mask->service);
continue;
}
int config_filter_parsers_get(struct config_filter_context *ctx, pool_t pool,
- const char *const *modules,
const struct config_filter *filter,
struct config_module_parser **parsers_r,
struct master_service_settings_output *output_r,
with an error. Merging SET_STRLIST types requires
settings_parser_apply_changes() to work a bit unintuitively by
letting the destination settings override the source settings. */
- src = config_filter_find_all(ctx, pool, modules, filter, output_r);
+ src = config_filter_find_all(ctx, pool, filter, output_r);
/* all of them should have the same number of parsers.
duplicate our initial parsers from the first match */
/* Build new parsers from all existing ones matching the given filter. */
int config_filter_parsers_get(struct config_filter_context *ctx, pool_t pool,
- const char *const *modules,
const struct config_filter *filter,
struct config_module_parser **parsers_r,
struct master_service_settings_output *output_r,