projects
/
oweals
/
musl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a6adb2b
)
fix crash in regexec for nonzero nmatch argument with REG_NOSUB
author
Rich Felker
<dalias@aerifal.cx>
Thu, 17 Jul 2014 23:56:27 +0000
(19:56 -0400)
committer
Rich Felker
<dalias@aerifal.cx>
Thu, 17 Jul 2014 23:56:27 +0000
(19:56 -0400)
per POSIX, the nmatch and pmatch arguments are ignored when the regex
was compiled with REG_NOSUB.
src/regex/regexec.c
patch
|
blob
|
history
diff --git
a/src/regex/regexec.c
b/src/regex/regexec.c
index 855cef573ae94a12370492a4da433a39dff37856..2e35b832803fd4199c2b19024be4982aa951fb7c 100644
(file)
--- a/
src/regex/regexec.c
+++ b/
src/regex/regexec.c
@@
-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);