diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | posix/Makefile | 10 | ||||
-rw-r--r-- | posix/bug-regex31.c | 16 |
3 files changed, 27 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog index 15b47f9049..ee11d29e1e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2010-10-11 Ulrich Drepper <drepper@gmail.com> + * posix/bug-regex31.c: New file. + * posix/Makefile: Add rules to build and run bug-regex31. + * posix/regcomp.c (parse_bracket_exp): Add missing re_free calls. [BZ #12078] diff --git a/posix/Makefile b/posix/Makefile index 4f29963a20..356896f7cc 100644 --- a/posix/Makefile +++ b/posix/Makefile @@ -82,7 +82,7 @@ tests := tstgetopt testfnm runtests runptests \ bug-regex17 bug-regex18 bug-regex19 bug-regex20 \ bug-regex21 bug-regex22 bug-regex23 bug-regex24 \ bug-regex25 bug-regex26 bug-regex27 bug-regex28 \ - bug-regex29 bug-regex30 \ + bug-regex29 bug-regex30 bug-regex31 \ tst-nice tst-nanosleep tst-regex2 \ transbug tst-rxspencer tst-pcre tst-boost \ bug-ga1 tst-vfork1 tst-vfork2 tst-vfork3 tst-waitid \ @@ -111,6 +111,7 @@ generated := $(addprefix wordexp-test-result, 1 2 3 4 5 6 7 8 9 10) \ annexc annexc.out wordexp-tst.out bug-regex2-mem \ bug-regex2.mtrace bug-regex14-mem bug-regex14.mtrace \ bug-regex21-mem bug-regex21.mtrace \ + bug-regex31-mem bug-regex31.mtrace \ tst-rxspencer-mem tst-rxspencer.mtrace tst-getconf.out \ tst-pcre-mem tst-pcre.mtrace tst-boost-mem tst-boost.mtrace \ bug-ga2.mtrace bug-ga2-mem bug-glob2.mtrace bug-glob2-mem \ @@ -232,7 +233,7 @@ endif tests: $(objpfx)annexc.out ifeq (no,$(cross-compiling)) tests: $(objpfx)bug-regex2-mem $(objpfx)bug-regex14-mem \ - $(objpfx)bug-regex21-mem $(objpfx)tst-rxspencer-mem \ + $(objpfx)bug-regex21-mem $(objpfx)bug-regex31-mem $(objpfx)tst-rxspencer-mem\ $(objpfx)tst-pcre-mem $(objpfx)tst-boost-mem $(objpfx)tst-getconf.out \ $(objpfx)bug-glob2-mem $(objpfx)tst-vfork3-mem xtests: $(objpfx)bug-ga2-mem @@ -261,6 +262,11 @@ bug-regex21-ENV = MALLOC_TRACE=$(objpfx)bug-regex21.mtrace $(objpfx)bug-regex21-mem: $(objpfx)bug-regex21.out $(common-objpfx)malloc/mtrace $(objpfx)bug-regex21.mtrace > $@ +bug-regex31-ENV = MALLOC_TRACE=$(objpfx)bug-regex31.mtrace + +$(objpfx)bug-regex31-mem: $(objpfx)bug-regex31.out + $(common-objpfx)malloc/mtrace $(objpfx)bug-regex31.mtrace > $@ + tst-vfork3-ENV = MALLOC_TRACE=$(objpfx)tst-vfork3.mtrace $(objpfx)tst-vfork3-mem: $(objpfx)tst-vfork3.out diff --git a/posix/bug-regex31.c b/posix/bug-regex31.c new file mode 100644 index 0000000000..2d5d6695d4 --- /dev/null +++ b/posix/bug-regex31.c @@ -0,0 +1,16 @@ +#include <mcheck.h> +#include <regex.h> +#include <stdio.h> +#include <sys/types.h> + +int main() +{ + regex_t regex; + int rc; + + mtrace (); + + if ((rc = regcomp (®ex, "([0]", REG_EXTENDED))) + printf ("Error %d (expected)\n", rc); + return 0; +} |