int
datamatcher_init(Datamatcher *ma, const char *match, int flags)
{
- ma->match = match;
+ ma->match = match ? solv_strdup(match) : 0;
ma->flags = flags;
ma->error = 0;
ma->matchdata = 0;
void
datamatcher_free(Datamatcher *ma)
{
+ if (ma->match)
+ ma->match = solv_free((char *)ma->match);
if ((ma->flags & SEARCH_STRINGMASK) == SEARCH_REGEX && ma->matchdata)
{
regfree(ma->matchdata);