diff options
author | Szabolcs Nagy <nsz@port70.net> | 2015-09-23 18:19:34 +0000 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2015-09-24 02:33:18 -0400 |
commit | 4260dfe1ecc43d92d1e6d30daa0f22bd746d1740 (patch) | |
tree | d9bd71ea879cbf0acd08ae616cd682d663c88f0a /src/regex | |
parent | b61df2294f662540786f2558f691eba7447ff5ba (diff) | |
download | musl-4260dfe1ecc43d92d1e6d30daa0f22bd746d1740.zip musl-4260dfe1ecc43d92d1e6d30daa0f22bd746d1740.tar.gz musl-4260dfe1ecc43d92d1e6d30daa0f22bd746d1740.tar.bz2 |
regcomp: propagate allocation failures
The error code of an allocating function was not checked in tre_add_tag.
Diffstat (limited to 'src/regex')
-rw-r--r-- | src/regex/regcomp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/regex/regcomp.c b/src/regex/regcomp.c index 978dd87..330de46 100644 --- a/src/regex/regcomp.c +++ b/src/regex/regcomp.c @@ -1584,7 +1584,8 @@ tre_add_tags(tre_mem_t mem, tre_stack_t *stack, tre_ast_node_t *tree, { status = tre_add_tag_right(mem, left, tag_left); tnfa->tag_directions[tag_left] = TRE_TAG_MAXIMIZE; - status = tre_add_tag_right(mem, right, tag_right); + if (status == REG_OK) + status = tre_add_tag_right(mem, right, tag_right); tnfa->tag_directions[tag_right] = TRE_TAG_MAXIMIZE; } num_tags += 2; |