/[pcre]/code/trunk/ChangeLog
ViewVC logotype

Diff of /code/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 217 by ph10, Wed Aug 15 15:21:04 2007 UTC revision 220 by ph10, Thu Aug 16 13:29:39 2007 UTC
# Line 1  Line 1 
1  ChangeLog for PCRE  ChangeLog for PCRE
2  ------------------  ------------------
3    
4  Version 7.3 09-Aug-07  Version 7.3 16-Aug-07
5  ---------------------  ---------------------
6    
7   1. In the rejigging of the build system that eventually resulted in 7.1, the   1. In the rejigging of the build system that eventually resulted in 7.1, the
# Line 98  Version 7.3 09-Aug-07 Line 98  Version 7.3 09-Aug-07
98      the "low surrogate" sequence 0xD800 to 0xDFFF. Previously, PCRE allowed the      the "low surrogate" sequence 0xD800 to 0xDFFF. Previously, PCRE allowed the
99      full range 0 to 0x7FFFFFFF, as defined by RFC 2279. Internally, it still      full range 0 to 0x7FFFFFFF, as defined by RFC 2279. Internally, it still
100      does: it's just the validity check that is more restrictive.      does: it's just the validity check that is more restrictive.
101    
102  16. Inserted checks for integer overflows during escape sequence (backslash)  16. Inserted checks for integer overflows during escape sequence (backslash)
103      processing, and also fixed erroneous offset values for syntax errors during      processing, and also fixed erroneous offset values for syntax errors during
104      backslash processing.      backslash processing.
105    
106  17. Fixed another case of looking too far back in non-UTF-8 mode (cf 12 above)  17. Fixed another case of looking too far back in non-UTF-8 mode (cf 12 above)
107      for patterns like [\PPP\x8a]{1,}\x80 with the subject "A\x80".      for patterns like [\PPP\x8a]{1,}\x80 with the subject "A\x80".
108    
109  18. An unterminated class in a pattern like (?1)\c[ with a "forward reference"  18. An unterminated class in a pattern like (?1)\c[ with a "forward reference"
110      caused an overrun.      caused an overrun.
111    
112  19. A pattern like (?:[\PPa*]*){8,} which had an "extended class" (one with  19. A pattern like (?:[\PPa*]*){8,} which had an "extended class" (one with
113      something other than just ASCII characters) inside a group that had an      something other than just ASCII characters) inside a group that had an
114      unlimited repeat caused a loop at compile time (while checking to see      unlimited repeat caused a loop at compile time (while checking to see
115      whether the group could match an empty string).      whether the group could match an empty string).
116    
117  20. Debugging a pattern containing \p or \P could cause a crash. For example,  20. Debugging a pattern containing \p or \P could cause a crash. For example,
118      [\P{Any}] did so. (Error in the code for printing property names.)      [\P{Any}] did so. (Error in the code for printing property names.)
119    
120    21. An orphan \E inside a character class could cause a crash.
121    
122    22. A repeated capturing bracket such as (A)? could cause a wild memory
123        reference during compilation.
124    
125    23. There are several functions in pcre_compile() that scan along a compiled
126        expression for various reasons (e.g. to see if it's fixed length for look
127        behind). There were bugs in these functions when a repeated \p or \P was
128        present in the pattern. These operators have additional parameters compared
129        with \d, etc, and these were not being taken into account when moving along
130        the compiled data. Specifically:
131    
132        (a) A item such as \p{Yi}{3} in a lookbehind was not treated as fixed
133            length.
134    
135        (b) An item such as \pL+ within a repeated group could cause crashes or
136            loops.
137    
138        (c) A pattern such as \p{Yi}+(\P{Yi}+)(?1) could give an incorrect
139            "reference to non-existent subpattern" error.
140    
141    24. A repeated \S or \W in UTF-8 mode could give wrong answers when multibyte
142        characters were involved (for example /\S{2}/8g with "A\x{a3}BC").
143    
144    
145  Version 7.2 19-Jun-07  Version 7.2 19-Jun-07
146  ---------------------  ---------------------

Legend:
Removed from v.217  
changed lines
  Added in v.220

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12