/* If there are options or categories to inherit from, process them now */
if (c) {
if (!(cur = strchr(c, ')'))) {
+ ast_category_destroy(newcat);
ast_log(LOG_WARNING, "parse error: no closing ')', line %d of %s\n", lineno, configfile);
return -1;
}
base = ast_category_get(cfg, cur, "TEMPLATES=include");
if (!base) {
+ if (newcat) {
+ ast_category_destroy(newcat);
+ }
ast_log(LOG_WARNING, "Inheritance requested, but category '%s' does not exist, line %d of %s\n", cur, lineno, configfile);
return -1;
}
if (ast_category_inherit(*cat, base)) {
+ if (newcat) {
+ ast_category_destroy(newcat);
+ }
ast_log(LOG_ERROR, "Inheritence requested, but allocation failed\n");
return -1;
}