Do not crash in eggregex

master
Yevgen Muntyan 2006-08-06 22:44:04 -05:00
parent 760ef7958c
commit c50ead13dd
2 changed files with 4 additions and 2 deletions

View File

@ -594,7 +594,7 @@ EggRegex*
moo_find_get_regex (MooFind *find)
{
g_return_val_if_fail (MOO_IS_FIND (find), NULL);
return find->regex ? egg_regex_ref (find->regex) : NULL;
return egg_regex_ref (find->regex);
}

View File

@ -80,6 +80,7 @@ regex_new (pcre *re,
EggRegex *regex = g_new0 (EggRegex, 1);
gint capture_count;
regex->ref_count = 1;
regex->regex = re;
regex->pattern = g_strdup (pattern);
regex->string_len = -1; /* not set yet */
@ -312,6 +313,7 @@ egg_regex_clear (EggRegex *regex)
* delimiter offsets stored. Free up those guys as well. */
if (regex->delims != NULL)
g_slist_free (regex->delims);
regex->delims = NULL;
}
/**
@ -1308,7 +1310,7 @@ egg_regex_split_next_full (EggRegex *regex,
if (regex->delims != NULL)
{
token = regex->delims->data;
regex->delims = g_slist_remove (regex->delims, token);
regex->delims = g_slist_delete_link (regex->delims, regex->delims);
return token;
}