for (; func_table->key != NULL; func_table++) {
if (strcmp(func_table->key, key) == 0) {
ret = func_table->func(data, context, &value, error_r);
+ if (*error_r == NULL)
+ *error_r = t_strdup_printf("Unknown variables in function %%%s", key);
*var_r = value != NULL ? value : "";
return ret;
}
return ret;
}
}
- if ((ret = var_expand_func(ctx->func_table, key, data,
- ctx->context, var_r, error_r)) == 0) {
- if (*error_r == NULL)
- *error_r = t_strdup_printf("Unknown variables in function %%%s", key);
- }
- return ret;
+ return var_expand_func(ctx->func_table, key, data,
+ ctx->context, var_r, error_r);
}