/* Free a bregexps alist */ void free_bregexps(alist *bregexps) { Dmsg0(500, "bregexp: freeing all BREGEXP object\n"); BREGEXP *elt; foreach_alist(elt, bregexps) { free_bregexp(elt); }
/* * Free all query filters. */ static inline void db_destroy_query_filters(alist *query_filters) { B_DB_RWRULE *rewrite_rule; foreach_alist(rewrite_rule, query_filters) { free_bregexp(rewrite_rule->rewrite_regexp); free(rewrite_rule->search_pattern); free(rewrite_rule); }
BREGEXP *new_bregexp(const char *motif) { Dmsg0(500, "bregexp: creating new bregexp object\n"); BREGEXP *self = (BREGEXP *)bmalloc(sizeof(BREGEXP)); memset(self, 0, sizeof(BREGEXP)); if (!self->extract_regexp(motif)) { Dmsg0(100, "bregexp: extract_regexp error\n"); free_bregexp(self); return NULL; } self->result = get_pool_memory(PM_FNAME); self->result[0] = '\0'; return self; }