ctx->enum_fixup = next;
}
}
- TALLOC_FREE(ctx->fixup_pool);
/*
* Walk over all of the hash tables to ensure they're
rcode = _dict_from_file(&ctx,
dir_name, filename, src_file, src_line);
if (rcode < 0) {
- // free up the various fixups
+ TALLOC_FREE(ctx.fixup_pool);
return rcode;
}
* Fixups should have been applied already to any protocol
* dictionaries.
*/
- return fr_dict_finalise(&ctx);
+ rcode = fr_dict_finalise(&ctx);
+ if (rcode < 0) TALLOC_FREE(ctx.fixup_pool);
+
+ return rcode;
}
/** (Re-)Initialize the special internal dictionary
}
fr_dict_finalise(&ctx);
+ TALLOC_FREE(ctx.fixup_pool);
return 0;
}