summaryrefslogtreecommitdiff
path: root/pcre_exec.c
diff options
context:
space:
mode:
authorph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2011-09-06 09:16:32 +0000
committerph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2011-09-06 09:16:32 +0000
commit3165c90a12699399a54204d5ba50c4a110b2177c (patch)
treec71d96ed7f8b182a728cb232e3f548fb93d7b440 /pcre_exec.c
parentc1c5d18cf3b80b709f4b97c04b26ab3f3594be77 (diff)
downloadpcre-3165c90a12699399a54204d5ba50c4a110b2177c.tar.gz
Fix loop/bad error when recursed group contains (*PRUNE) etc.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@681 2f5784b3-3f2a-0410-8824-cb99058d5e15
Diffstat (limited to 'pcre_exec.c')
-rw-r--r--pcre_exec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pcre_exec.c b/pcre_exec.c
index 0f9dcb7..49c6c64 100644
--- a/pcre_exec.c
+++ b/pcre_exec.c
@@ -1556,10 +1556,10 @@ for (;;)
md, eptrb, RM6);
memcpy(md->offset_vector, new_recursive.offset_save,
new_recursive.saved_max * sizeof(int));
+ md->recursive = new_recursive.prevrec;
if (rrc == MATCH_MATCH || rrc == MATCH_ACCEPT)
{
DPRINTF(("Recursion matched\n"));
- md->recursive = new_recursive.prevrec;
if (new_recursive.offset_save != stacksave)
(pcre_free)(new_recursive.offset_save);