This is an automated email from the ASF dual-hosted git repository.

rjung pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat-connectors.git


The following commit(s) were added to refs/heads/main by this push:
     new c1d9e71d6 Update PCRE bundled with the ISAPI redirector to 8.45.
c1d9e71d6 is described below

commit c1d9e71d68d9573728d71b738d683993ba3e5089
Author: Rainer Jung <rainer.j...@kippdata.de>
AuthorDate: Wed Aug 7 17:16:35 2024 +0200

    Update PCRE bundled with the ISAPI redirector to 8.45.
---
 native/iis/pcre/pcre.h            | 4 ++--
 native/iis/pcre/pcre_compile.c    | 9 ++++++---
 native/iis/pcre/pcre_exec.c       | 4 ++--
 xdocs/miscellaneous/changelog.xml | 7 +++++++
 4 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/native/iis/pcre/pcre.h b/native/iis/pcre/pcre.h
index 86e3956c2..bee1fe6ff 100644
--- a/native/iis/pcre/pcre.h
+++ b/native/iis/pcre/pcre.h
@@ -42,9 +42,9 @@ POSSIBILITY OF SUCH DAMAGE.
 /* The current PCRE version information. */
 
 #define PCRE_MAJOR          8
-#define PCRE_MINOR          44
+#define PCRE_MINOR          45
 #define PCRE_PRERELEASE     
-#define PCRE_DATE           2020-02-12
+#define PCRE_DATE           2021-06-15
 
 /* When an application links to a PCRE DLL in Windows, the symbols that are
 imported have to be identified as such. When building PCRE, the appropriate
diff --git a/native/iis/pcre/pcre_compile.c b/native/iis/pcre/pcre_compile.c
index 3be0fbfb1..8b80abe03 100644
--- a/native/iis/pcre/pcre_compile.c
+++ b/native/iis/pcre/pcre_compile.c
@@ -6,7 +6,7 @@
 and semantics are as close as possible to those of the Perl 5 language.
 
                        Written by Philip Hazel
-           Copyright (c) 1997-2020 University of Cambridge
+           Copyright (c) 1997-2021 University of Cambridge
 
 -----------------------------------------------------------------------------
 Redistribution and use in source and binary forms, with or without
@@ -9099,6 +9099,8 @@ pcre_uchar cworkspace[COMPILE_WORK_SIZE];
 similar way to cworkspace, it can be expanded using malloc() if necessary. */
 
 named_group named_groups[NAMED_GROUP_LIST_SIZE];
+cd->named_groups = named_groups;
+cd->named_group_list_size = NAMED_GROUP_LIST_SIZE;
 
 /* Set this early so that early errors get offset 0. */
 
@@ -9372,8 +9374,6 @@ cd->hwm = cworkspace;
 cd->iscondassert = FALSE;
 cd->start_workspace = cworkspace;
 cd->workspace_size = COMPILE_WORK_SIZE;
-cd->named_groups = named_groups;
-cd->named_group_list_size = NAMED_GROUP_LIST_SIZE;
 cd->start_pattern = (const pcre_uchar *)pattern;
 cd->end_pattern = (const pcre_uchar *)(pattern + STRLEN_UC((const pcre_uchar 
*)pattern));
 cd->req_varyopt = 0;
@@ -9484,6 +9484,7 @@ if (cd->names_found > 0)
     add_name(cd, ng->name, ng->length, ng->number);
   if (cd->named_group_list_size > NAMED_GROUP_LIST_SIZE)
     (PUBL(free))((void *)cd->named_groups);
+  cd->named_group_list_size = 0;   /* So we don't free it twice */
   }
 
 /* Set up a starting, non-extracting bracket, then compile the expression. On
@@ -9634,6 +9635,8 @@ if (errorcode != 0)
   {
   (PUBL(free))(re);
   PCRE_EARLY_ERROR_RETURN:
+  if (cd->named_group_list_size > NAMED_GROUP_LIST_SIZE)
+    (PUBL(free))((void *)cd->named_groups);
   *erroroffset = (int)(ptr - (const pcre_uchar *)pattern);
   PCRE_EARLY_ERROR_RETURN2:
   *errorptr = find_error_text(errorcode);
diff --git a/native/iis/pcre/pcre_exec.c b/native/iis/pcre/pcre_exec.c
index 3fd58cbe3..5b96954fc 100644
--- a/native/iis/pcre/pcre_exec.c
+++ b/native/iis/pcre/pcre_exec.c
@@ -6,7 +6,7 @@
 and semantics are as close as possible to those of the Perl 5 language.
 
                        Written by Philip Hazel
-           Copyright (c) 1997-2018 University of Cambridge
+           Copyright (c) 1997-2021 University of Cambridge
 
 -----------------------------------------------------------------------------
 Redistribution and use in source and binary forms, with or without
@@ -758,7 +758,7 @@ for (;;)
     md->mark = NULL;    /* In case previously set by assertion */
     RMATCH(eptr, ecode + PRIV(OP_lengths)[*ecode] + ecode[1], offset_top, md,
       eptrb, RM55);
-    if ((rrc == MATCH_MATCH || rrc == MATCH_ACCEPT) &&
+    if ((rrc == MATCH_MATCH || rrc == MATCH_ACCEPT || rrc == MATCH_KETRPOS) &&
          md->mark == NULL) md->mark = ecode + 2;
 
     /* A return of MATCH_SKIP_ARG means that matching failed at SKIP with an
diff --git a/xdocs/miscellaneous/changelog.xml 
b/xdocs/miscellaneous/changelog.xml
index af1a24517..6629a59f6 100644
--- a/xdocs/miscellaneous/changelog.xml
+++ b/xdocs/miscellaneous/changelog.xml
@@ -60,6 +60,13 @@
       </fix>
     </changelog>
   </subsection>
+  <subsection name="IIS">
+    <changelog>
+      <update>
+        Update PCRE bundled with the ISAPI redirector to 8.45. (rjung)
+      </update>
+    </changelog>
+  </subsection>
   <subsection name="Common">
     <changelog>
       <fix>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to