fix crash in regexec for nonzero nmatch argument with REG_NOSUB
per POSIX, the nmatch and pmatch arguments are ignored when the regex was compiled with REG_NOSUB.
This commit is contained in:
parent
a6adb2bcd8
commit
72ed3d47e5
1 changed files with 1 additions and 0 deletions
|
|
@ -983,6 +983,7 @@ regexec(const regex_t *restrict preg, const char *restrict string,
|
|||
tre_tnfa_t *tnfa = (void *)preg->TRE_REGEX_T_FIELD;
|
||||
reg_errcode_t status;
|
||||
int *tags = NULL, eo;
|
||||
if (tnfa->cflags & REG_NOSUB) nmatch = 0;
|
||||
if (tnfa->num_tags > 0 && nmatch > 0)
|
||||
{
|
||||
tags = xmalloc(sizeof(*tags) * tnfa->num_tags);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue