b2aafa
import pcre-8.32-12.el7.src.rpm
@@ -0,0 +1,55 @@
|
|
1
|
+
From c061f6a865a473cf93aae1e6a0ccd2325509a6b2 Mon Sep 17 00:00:00 2001
|
2
|
+
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
3
|
+
Date: Thu, 9 Jan 2014 13:39:28 +0100
|
4
|
+
Subject: [PATCH] Fix range check in JIT path
|
5
|
+
MIME-Version: 1.0
|
6
|
+
Content-Type: text/plain; charset=UTF-8
|
7
|
+
Content-Transfer-Encoding: 8bit
|
8
|
+
|
9
|
+
Jitted range check was wrong:
|
10
|
+
|
11
|
+
re> /[efij]/S+
|
12
|
+
data> e
|
13
|
+
No match
|
14
|
+
|
15
|
+
while interpretted path is correct:
|
16
|
+
|
17
|
+
re> /[efij]/
|
18
|
+
data> e
|
19
|
+
0: e
|
20
|
+
|
21
|
+
This fix is part of:
|
22
|
+
|
23
|
+
commit c07887b22a83fba842e88889c9e57a622b9ee439
|
24
|
+
Author: zherczeg <zherczeg@2f5784b3-3f2a-0410-8824-cb99058d5e15>
|
25
|
+
Date: Sun Dec 22 20:47:08 2013 +0000
|
26
|
+
|
27
|
+
The auto-possessification of character sets were improved. The JIT compiler also optimizes more character set checks.
|
28
|
+
|
29
|
+
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1415 2f5784b3-3f2a-0410-8824-cb99058d5e15
|
30
|
+
|
31
|
+
<http://bugs.exim.org/show_bug.cgi?id=1423>
|
32
|
+
|
33
|
+
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
34
|
+
---
|
35
|
+
pcre_jit_compile.c | 4 +++-
|
36
|
+
1 file changed, 3 insertions(+), 1 deletion(-)
|
37
|
+
|
38
|
+
diff --git a/pcre_jit_compile.c b/pcre_jit_compile.c
|
39
|
+
index d070263..47447da 100644
|
40
|
+
--- a/pcre_jit_compile.c
|
41
|
+
+++ b/pcre_jit_compile.c
|
42
|
+
@@ -3573,7 +3573,9 @@ switch(ranges[0])
|
43
|
+
}
|
44
|
+
return TRUE;
|
45
|
+
}
|
46
|
+
- if ((ranges[3] - ranges[2]) == (ranges[5] - ranges[4]) && is_powerof2(ranges[4] - ranges[2]))
|
47
|
+
+ if ((ranges[3] - ranges[2]) == (ranges[5] - ranges[4])
|
48
|
+
+ && (ranges[2] | (ranges[4] - ranges[2])) == ranges[4]
|
49
|
+
+ && is_powerof2(ranges[4] - ranges[2]))
|
50
|
+
{
|
51
|
+
if (readch)
|
52
|
+
read_char(common);
|
53
|
+
--
|
54
|
+
1.8.3.1
|
55
|
+
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#%%global rcversion RC1
|
3
3
|
Name: pcre
|
4
4
|
Version: 8.32
|
5
|
-
Release: %{?rcversion:0.}
|
5
|
+
Release: %{?rcversion:0.}12%{?rcversion:.%rcversion}%{?dist}
|
6
6
|
%global myversion %{version}%{?rcversion:-%rcversion}
|
7
7
|
Summary: Perl-compatible regular expression library
|
8
8
|
Group: System Environment/Libraries
|
@@ -24,6 +24,8 @@ Patch5: pcre-8.33-RC1-Fix-pcretest-crash-with-a-data-line-longer-than-6553.patch
|
|
24
24
|
# Fix passing too small output vector to pcre_dfa_exec, in upstream after
|
25
25
|
# 8.33-RC1, bug #963284
|
26
26
|
Patch6: pcre-8.33-RC1-Fix-segfault-when-pcre_dfa_exec-is-called-with-an-ou.patch
|
27
|
+
# Fix jitted range check, in upstream after 8.34, bug #1048101
|
28
|
+
Patch7: pcre-8.34-Fix-range-check-in-JIT-path.patch
|
27
29
|
BuildRequires: readline-devel
|
28
30
|
# New libtool to get rid of rpath
|
29
31
|
BuildRequires: autoconf, automake, libtool
|
@@ -70,6 +72,7 @@ Utilities demonstrating PCRE capabilities like pcregrep or pcretest.
|
|
70
72
|
%patch4 -p1 -b .pcregrep_empty_line
|
71
73
|
%patch5 -p1 -b .pcretest_grow_buffer
|
72
74
|
%patch6 -p1 -b .vector_size
|
75
|
+
%patch7 -p1 -b .jitted_range_check
|
73
76
|
# Because of rpath patch
|
74
77
|
libtoolize --copy --force && autoreconf -vif
|
75
78
|
# One contributor's name is non-UTF-8
|
@@ -80,9 +83,12 @@ for F in ChangeLog; do
|
|
80
83
|
done
|
81
84
|
|
82
85
|
%build
|
83
|
-
# There is a strict-aliasing problem on PPC64, bug #881232
|
84
86
|
%ifarch ppc64
|
87
|
+
# There is a strict-aliasing problem on PPC64, bug #881232
|
85
88
|
%global optflags %{optflags} -fno-strict-aliasing
|
89
|
+
# There is an explicit request to optimize PCRE more, bug #1051072
|
90
|
+
%global optflags %(printf '%s' '%{optflags}' | \
|
91
|
+
sed -r 's/(^|[[:space:]])-O[012]([[:space:]]|$)/\\1-O3\\2/')
|
86
92
|
%endif
|
87
93
|
%configure \
|
88
94
|
%ifarch aarch64 s390 s390x sparc64 sparcv9
|
@@ -137,6 +143,18 @@ make check
|
|
137
143
|
%{_mandir}/man1/pcretest.*
|
138
144
|
|
139
145
|
%changelog
|
146
|
+
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 8.32-12
|
147
|
+
- Mass rebuild 2014-01-24
|
148
|
+
|
149
|
+
* Fri Jan 10 2014 Petr Pisar <ppisar@redhat.com> - 8.32-11
|
150
|
+
- Raise optimization to level 3 on 64-bit PowerPC (bug #1051072)
|
151
|
+
|
152
|
+
* Thu Jan 09 2014 Petr Pisar <ppisar@redhat.com> - 8.32-10
|
153
|
+
- Fix jitted range check (bug #1048101)
|
154
|
+
|
155
|
+
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 8.32-9
|
156
|
+
- Mass rebuild 2013-12-27
|
157
|
+
|
140
158
|
* Wed Oct 16 2013 Petr Pisar <ppisar@redhat.com> - 8.33-8
|
141
159
|
- Disable strict-aliasing on PPC64 (bug #881232)
|
142
160
|
|