regexec.c: simplify re_search_2_stub
This commit is contained in:
parent
5ddf954cf1
commit
d044d844dd
|
@ -1,3 +1,9 @@
|
||||||
|
2010-01-22 Jim Meyering <jim@meyering.net>
|
||||||
|
|
||||||
|
[BZ #11187]
|
||||||
|
* posix/regexec.c (re_search_2_stub): Use simpler method than
|
||||||
|
boolean for freeing internal storage.
|
||||||
|
|
||||||
2010-01-22 Ulrich Drepper <drepper@redhat.com>
|
2010-01-22 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
* posix/regex_internal.c (re_string_skip_chars): Simplify test for
|
* posix/regex_internal.c (re_string_skip_chars): Simplify test for
|
||||||
|
|
|
@ -368,7 +368,7 @@ re_search_2_stub (bufp, string1, length1, string2, length2, start, range, regs,
|
||||||
const char *str;
|
const char *str;
|
||||||
int rval;
|
int rval;
|
||||||
int len = length1 + length2;
|
int len = length1 + length2;
|
||||||
int free_str = 0;
|
char *s = NULL;
|
||||||
|
|
||||||
if (BE (length1 < 0 || length2 < 0 || stop < 0, 0))
|
if (BE (length1 < 0 || length2 < 0 || stop < 0, 0))
|
||||||
return -2;
|
return -2;
|
||||||
|
@ -377,7 +377,7 @@ re_search_2_stub (bufp, string1, length1, string2, length2, start, range, regs,
|
||||||
if (length2 > 0)
|
if (length2 > 0)
|
||||||
if (length1 > 0)
|
if (length1 > 0)
|
||||||
{
|
{
|
||||||
char *s = re_malloc (char, len);
|
s = re_malloc (char, len);
|
||||||
|
|
||||||
if (BE (s == NULL, 0))
|
if (BE (s == NULL, 0))
|
||||||
return -2;
|
return -2;
|
||||||
|
@ -388,17 +388,14 @@ re_search_2_stub (bufp, string1, length1, string2, length2, start, range, regs,
|
||||||
memcpy (s + length1, string2, length2);
|
memcpy (s + length1, string2, length2);
|
||||||
#endif
|
#endif
|
||||||
str = s;
|
str = s;
|
||||||
free_str = 1;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
str = string2;
|
str = string2;
|
||||||
else
|
else
|
||||||
str = string1;
|
str = string1;
|
||||||
|
|
||||||
rval = re_search_stub (bufp, str, len, start, range, stop, regs,
|
rval = re_search_stub (bufp, str, len, start, range, stop, regs, ret_len);
|
||||||
ret_len);
|
re_free (s);
|
||||||
if (free_str)
|
|
||||||
re_free ((char *) str);
|
|
||||||
return rval;
|
return rval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue