summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2008-01-21 15:22:09 +0000
committerph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2008-01-21 15:22:09 +0000
commit9e0ca092ec1b8bf89370db008865fac757a046e9 (patch)
treed81937d6d890443ca1edbc60427193e9057f15f4
parent4ff532b445e64eb6453bccb24a8e23a6831488ea (diff)
downloadpcre-9e0ca092ec1b8bf89370db008865fac757a046e9.tar.gz
Tidies for 7.6-RC1 test release.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@309 2f5784b3-3f2a-0410-8824-cb99058d5e15
-rw-r--r--ChangeLog26
-rw-r--r--NEWS8
-rw-r--r--NON-UNIX-USE6
-rw-r--r--configure.ac2
-rw-r--r--pcre_compile.c16
5 files changed, 33 insertions, 25 deletions
diff --git a/ChangeLog b/ChangeLog
index 79d9697..3ae9493 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,19 +1,19 @@
ChangeLog for PCRE
------------------
-Version 7.6 19-Jan-08
+Version 7.6 21-Jan-08
---------------------
1. A character class containing a very large number of characters with
codepoints greater than 255 (in UTF-8 mode, of course) caused a buffer
overflow.
-
-2. Patch to cut out the "long long" test in pcrecpp_unittest when
- HAVE_LONG_LONG is not defined.
-
+
+2. Patch to cut out the "long long" test in pcrecpp_unittest when
+ HAVE_LONG_LONG is not defined.
+
3. Applied Christian Ehrlicher's patch to update the CMake build files to
bring them up to date and include new features. This patch includes:
-
+
- Fixed PH's badly added libz and libbz2 support.
- Fixed a problem with static linking.
- Added pcredemo.
@@ -21,16 +21,16 @@ Version 7.6 19-Jan-08
- Added a number of HAVE_XXX tests, including HAVE_WINDOWS_H and
HAVE_LONG_LONG.
- Added readline support for pcretest.
- - Added an listing of the option settings after cmake has run.
-
+ - Added an listing of the option settings after cmake has run.
+
4. A user submitted a patch to Makefile that makes it easy to created a dll
- under mingw. I added stuff to Makefile.am that cause it to include this
- special target, without affecting anything else.
-
+ under mingw. I added stuff to Makefile.am that cause it to include this
+ special target, without affecting anything else.
+
5. Applied Craig's patch that moves no_arg into the RE class in the C++ code.
This is an attempt to solve the reported problem "pcrecpp::no_arg is not
- exported in the Windows port". It has not yet been confirmed that the patch
- solves the problem, but it does no harm.
+ exported in the Windows port". It has not yet been confirmed that the patch
+ solves the problem, but it does no harm.
Version 7.5 10-Jan-08
diff --git a/NEWS b/NEWS
index 185463d..7f4bced 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,14 @@
News about PCRE releases
------------------------
+Release 7.6 21-Jan-08
+---------------------
+
+The main reason for having this release so soon after 7.5 is because it fixes a
+potential buffer overflow problem in pcre_compile() when run in UTF-8 mode. In
+addition, the CMake configuration files have been brought up to date.
+
+
Release 7.5 10-Jan-08
---------------------
diff --git a/NON-UNIX-USE b/NON-UNIX-USE
index e566e23..ff5b88e 100644
--- a/NON-UNIX-USE
+++ b/NON-UNIX-USE
@@ -295,7 +295,7 @@ were contributed by a PCRE user.
USE OF RELATIVE PATHS WITH CMAKE ON WINDOWS
A PCRE user comments as follows:
-
+
I thought that others may want to know the current state of
CMAKE_USE_RELATIVE_PATHS support on Windows.
@@ -310,7 +310,7 @@ I am sure CMake people can fix that if they want to. Until then one will
need to replace existing absolute paths in project files with relative
paths manually (e.g. from VS) - relative to project file location. I did
just that before being told to try CMAKE_USE_RELATIVE_PATHS. Not a big
-deal.
+deal.
AdditionalIncludeDirectories="E:\builds\pcre\build;E:\builds\pcre\pcre-7.5;"
AdditionalIncludeDirectories=".;E:\builds\pcre\pcre-7.5;"
@@ -335,7 +335,7 @@ TESTING WITH RUNTEST.BAT
4. To test pcrecpp, run pcrecpp_unittest.exe, pcre_stringpiece_unittest.exe and
pcre_scanner_unittest.exe.
-
+
BUILDING UNDER WINDOWS WITH BCC5.5
diff --git a/configure.ac b/configure.ac
index cfe7397..17ed241 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ dnl empty.
m4_define(pcre_major, [7])
m4_define(pcre_minor, [6])
m4_define(pcre_prerelease, [-RC1])
-m4_define(pcre_date, [2008-01-19])
+m4_define(pcre_date, [2008-01-21])
# Libtool shared library interface versions (current:revision:age)
m4_define(libpcre_version, [0:1:0])
diff --git a/pcre_compile.c b/pcre_compile.c
index f634dcc..799f47c 100644
--- a/pcre_compile.c
+++ b/pcre_compile.c
@@ -2688,7 +2688,7 @@ for (;; ptr++)
#ifdef SUPPORT_UTF8
class_utf8 = FALSE; /* No chars >= 256 */
class_utf8data = code + LINK_SIZE + 2; /* For UTF-8 items */
- class_utf8data_base = class_utf8data; /* For resetting in pass 1 */
+ class_utf8data_base = class_utf8data; /* For resetting in pass 1 */
#endif
/* Process characters until ] is reached. By writing this as a "do" it
@@ -2704,18 +2704,18 @@ for (;; ptr++)
{ /* Braces are required because the */
GETCHARLEN(c, ptr, ptr); /* macro generates multiple statements */
}
-
+
/* In the pre-compile phase, accumulate the length of any UTF-8 extra
- data and reset the pointer. This is so that very large classes that
+ data and reset the pointer. This is so that very large classes that
contain a zillion UTF-8 characters no longer overwrite the work space
- (which is on the stack). */
-
+ (which is on the stack). */
+
if (lengthptr != NULL)
{
*lengthptr += class_utf8data - class_utf8data_base;
- class_utf8data = class_utf8data_base;
- }
-
+ class_utf8data = class_utf8data_base;
+ }
+
#endif
/* Inside \Q...\E everything is literal except \E */