[pcre] Fix forward search in JIT when link size is 3 or greater

Petr Pisar ppisar at fedoraproject.org
Mon Jan 28 09:04:59 UTC 2013


commit 7511b33ca5d953c7ea057abf9edfd035adef9e96
Author: Petr Písař <ppisar at redhat.com>
Date:   Mon Jan 28 09:43:08 2013 +0100

    Fix forward search in JIT when link size is 3 or greater

 ...-search-in-JIT-when-link-size-is-3-or-gre.patch |   50 ++++++++++++++++++++
 pcre.spec                                          |    4 ++
 2 files changed, 54 insertions(+), 0 deletions(-)
---
diff --git a/pcre-8.32-Fix-forward-search-in-JIT-when-link-size-is-3-or-gre.patch b/pcre-8.32-Fix-forward-search-in-JIT-when-link-size-is-3-or-gre.patch
new file mode 100644
index 0000000..5998612
--- /dev/null
+++ b/pcre-8.32-Fix-forward-search-in-JIT-when-link-size-is-3-or-gre.patch
@@ -0,0 +1,50 @@
+From 693f81d9b37934fdb3a0b1de6d06cacbecaffb63 Mon Sep 17 00:00:00 2001
+From: zherczeg <zherczeg at 2f5784b3-3f2a-0410-8824-cb99058d5e15>
+Date: Fri, 18 Jan 2013 08:20:44 +0000
+Subject: [PATCH] Fix forward search in JIT when link size is 3 or greater.
+
+git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1239 2f5784b3-3f2a-0410-8824-cb99058d5e15
+
+Petr Pisar: Ported to 8.32.
+
+diff --git a/pcre_jit_compile.c b/pcre_jit_compile.c
+index cc9f097..3b83340 100644
+--- a/pcre_jit_compile.c
++++ b/pcre_jit_compile.c
+@@ -2573,7 +2573,7 @@ DEFINE_COMPILER;
+ struct sljit_label *start;
+ struct sljit_jump *quit;
+ pcre_uint32 chars[MAX_N_CHARS * 2];
+-pcre_uchar *cc = common->start + 1 + IMM2_SIZE;
++pcre_uchar *cc = common->start + 1 + LINK_SIZE;
+ int location = 0;
+ pcre_int32 len, c, bit, caseless;
+ int must_stop;
+diff --git a/testdata/testinput12 b/testdata/testinput12
+index 7deba3c..92c9603 100644
+--- a/testdata/testinput12
++++ b/testdata/testinput12
+@@ -86,4 +86,7 @@ and a couple of things that are different with JIT. --/
+ 
+ /.?(*THEN)/S!+I
+ 
++/^12345678abcd/mS++
++    12345678abcd
++
+ /-- End of testinput12 --/
+diff --git a/testdata/testoutput12 b/testdata/testoutput12
+index 559f48d..f3c0230 100644
+--- a/testdata/testoutput12
++++ b/testdata/testoutput12
+@@ -178,4 +178,8 @@ Subject length lower bound = -1
+ No set of starting bytes
+ JIT study was not successful
+ 
++/^12345678abcd/mS++
++    12345678abcd
++ 0: 12345678abcd (JIT)
++
+ /-- End of testinput12 --/
+-- 
+1.8.1
+
diff --git a/pcre.spec b/pcre.spec
index f8d1940..b50fa9f 100644
--- a/pcre.spec
+++ b/pcre.spec
@@ -13,6 +13,8 @@ Source: ftp://ftp.csx.cam.ac.uk/pub/software/programming/%{name}/%{?rcversion:Te
 Patch0: pcre-8.21-multilib.patch
 # Refused by upstream, bug #675477
 Patch1: pcre-8.32-refused_spelling_terminated.patch
+# In upstream after 8.32
+Patch2: pcre-8.32-Fix-forward-search-in-JIT-when-link-size-is-3-or-gre.patch
 BuildRequires: readline-devel
 # New libtool to get rid of rpath
 BuildRequires: autoconf, automake, libtool
@@ -54,6 +56,7 @@ Utilities demonstrating PCRE capabilities like pcregrep or pcretest.
 # Get rid of rpath
 %patch0 -p1 -b .multilib
 %patch1 -p1 -b .terminated_typos
+%patch2 -p1 -b .forward_jit
 # Because of rpath patch
 libtoolize --copy --force && autoreconf -vif
 # One contributor's name is non-UTF-8
@@ -118,6 +121,7 @@ make check
 
 %changelog
 * Mon Jan 28 2013 Petr Pisar <ppisar at redhat.com> - 8.32-4
+- Fix forward search in JIT when link size is 3 or greater
 
 * Fri Jan 25 2013 Peter Robinson <pbrobinson at fedoraproject.org> 8.32-3
 - Adjust autoreconf to fix FTBFS on F-19


More information about the scm-commits mailing list