const struct config_service *config_all_services = test_config_all_services;
struct test_settings {
+ pool_t pool;
const char *key;
const char *key2;
const char *key3;
.defaults = &test_settings_defaults,
.struct_size = sizeof(struct test_settings),
+ .pool_offset1 = 1 + offsetof(struct test_settings, pool),
};
static const struct setting_parser_info *const roots[] = {
setting_copy(def->type, src, dest, pool, keep_values);
}
- if (info->pool_offset1 > 0) {
- pool_t *pool_p = PTR_OFFSET(dest_set, info->pool_offset1 - 1);
- *pool_p = pool;
- }
+ i_assert(info->pool_offset1 > 0);
+ pool_t *pool_p = PTR_OFFSET(dest_set, info->pool_offset1 - 1);
+ *pool_p = pool;
return dest_set;
}
size_t type_offset1; /* type_offset+1. 0=nonexistent. */
size_t struct_size;
- size_t pool_offset1; /* pool_offset+1. 0=nonexistent. */
+ size_t pool_offset1; /* 1 + offset to pool_t field */
bool (*check_func)(void *set, pool_t pool, const char **error_r);
/* The event parameter can be used with settings_get*() to access other