From 087e7a62e1622f7fedd8207ddd85c3ba1e07984b Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Tue, 27 Oct 2020 21:42:23 +0100 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/pcre2.git#8a057ba535e6e9f946594ac82bd5d897d416ac49 --- ...ndary-check-bug-in-JIT-when-partial-.patch | 63 +++++++++++++++++++ pcre2.spec | 9 ++- 2 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 pcre2-10.35-Fixed-a-word-boundary-check-bug-in-JIT-when-partial-.patch diff --git a/pcre2-10.35-Fixed-a-word-boundary-check-bug-in-JIT-when-partial-.patch b/pcre2-10.35-Fixed-a-word-boundary-check-bug-in-JIT-when-partial-.patch new file mode 100644 index 0000000..355364e --- /dev/null +++ b/pcre2-10.35-Fixed-a-word-boundary-check-bug-in-JIT-when-partial-.patch @@ -0,0 +1,63 @@ +From fd5e04a35122c62584da5a9558f3b744a2d09692 Mon Sep 17 00:00:00 2001 +From: zherczeg +Date: Tue, 27 Oct 2020 08:16:04 +0000 +Subject: [PATCH] Fixed a word boundary check bug in JIT when partial matching + is enabled. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +git-svn-id: svn://vcs.exim.org/pcre2/code/trunk@1280 6239d852-aaf2-0410-a92c-79f79f948069 +Petr Písař: Ported to 10.35. +--- + src/pcre2_jit_compile.c | 2 ++ + testdata/testinput10 | 4 ++++ + testdata/testoutput10 | 6 ++++++ + +diff --git a/src/pcre2_jit_compile.c b/src/pcre2_jit_compile.c +index 04f0278..1977d28 100644 +--- a/src/pcre2_jit_compile.c ++++ b/src/pcre2_jit_compile.c +@@ -6571,9 +6571,11 @@ if (common->invalid_utf) + + if (common->mode != PCRE2_JIT_COMPLETE) + { ++ OP1(SLJIT_MOV, RETURN_ADDR, 0, TMP1, 0); + OP1(SLJIT_MOV, TMP2, 0, STR_PTR, 0); + move_back(common, NULL, TRUE); + check_start_used_ptr(common); ++ OP1(SLJIT_MOV, TMP1, 0, RETURN_ADDR, 0); + OP1(SLJIT_MOV, STR_PTR, 0, TMP2, 0); + } + } +diff --git a/testdata/testinput10 b/testdata/testinput10 +index efd3298..53e37cb 100644 +--- a/testdata/testinput10 ++++ b/testdata/testinput10 +@@ -613,4 +613,8 @@ + /A/utf,match_invalid_utf,caseless + \xe5A + ++/\bch\b/utf,match_invalid_utf ++ qchq\=ph ++ qchq\=ps ++ + # End of testinput10 +diff --git a/testdata/testoutput10 b/testdata/testoutput10 +index 2a3803f..d408510 100644 +--- a/testdata/testoutput10 ++++ b/testdata/testoutput10 +@@ -1875,4 +1875,10 @@ Subject length lower bound = 1 + \xe5A + 0: A + ++/\bch\b/utf,match_invalid_utf ++ qchq\=ph ++Partial match: ++ qchq\=ps ++Partial match: ++ + # End of testinput10 +-- +2.25.4 + diff --git a/pcre2.spec b/pcre2.spec index 549b72f..7bc6b6f 100644 --- a/pcre2.spec +++ b/pcre2.spec @@ -9,7 +9,7 @@ #%%global rcversion RC1 Name: pcre2 Version: 10.35 -Release: %{?rcversion:0.}7%{?rcversion:.%rcversion}%{?dist} +Release: %{?rcversion:0.}8%{?rcversion:.%rcversion}%{?dist} %global myversion %{version}%{?rcversion:-%rcversion} Summary: Perl-compatible regular expression library # the library: BSD with exceptions @@ -78,6 +78,9 @@ Patch8: pcre2-10.35-Fix-Bugzilla-2642-no-match-bug-in-8-bit-mode-for-cas.pat # Fix matching a character set when JIT is enabled and both Unicode script and # Unicode class are present, upstream bug #2644, in upstream after 10.35 Patch9: pcre2-10.35-Fixed-a-bug-in-character-set-matching-when-JIT-is-en.patch +# Fix a partial matching for a word boundary in JIT mode, upstream bug #2663, +# in upstream after 10.35. +Patch10: pcre2-10.35-Fixed-a-word-boundary-check-bug-in-JIT-when-partial-.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: coreutils @@ -178,6 +181,7 @@ Utilities demonstrating PCRE2 capabilities like pcre2grep or pcre2test. %patch7 -p1 %patch8 -p1 %patch9 -p1 +%patch10 -p1 # Because of multilib patch libtoolize --copy --force autoreconf -vif @@ -291,6 +295,9 @@ make %{?_smp_mflags} check VERBOSE=yes %{_mandir}/man1/pcre2test.* %changelog +* Tue Oct 27 2020 Petr Pisar - 10.35-8 +- Fix a partial matching for a word boundary in JIT mode (upstream bug #2663) + * Mon Sep 21 2020 Petr Pisar - 10.35-7 - Fix matching a character set when JIT is enabled and both Unicode script and Unicode class are present (upstream bug #2644)