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

Diff of /code/trunk/ChangeLog

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

revision 206 by ph10, Fri Aug 3 14:53:04 2007 UTC revision 213 by ph10, Wed Aug 15 11:34:14 2007 UTC
# Line 1  Line 1 
1  ChangeLog for PCRE  ChangeLog for PCRE
2  ------------------  ------------------
3    
4  Version 7.3 05-Jul-07  Version 7.3 09-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 64  Version 7.3 05-Jul-07 Line 64  Version 7.3 05-Jul-07
64      dynamic way, which I have now done. The artificial limitation on group      dynamic way, which I have now done. The artificial limitation on group
65      length has been removed - we now have only the limit on the total length of      length has been removed - we now have only the limit on the total length of
66      the compiled pattern, which depends on the LINK_SIZE setting.      the compiled pattern, which depends on the LINK_SIZE setting.
67    
68  10. Fixed a bug in the documentation for get/copy named substring when  10. Fixed a bug in the documentation for get/copy named substring when
69      duplicate names are permitted. If none of the named substrings are set, the      duplicate names are permitted. If none of the named substrings are set, the
70      functions return PCRE_ERROR_NOSUBSTRING (7); the doc said they returned an      functions return PCRE_ERROR_NOSUBSTRING (7); the doc said they returned an
71      empty string.      empty string.
72    
73  11. Because Perl interprets \Q...\E at a high level, and ignores orphan \E  11. Because Perl interprets \Q...\E at a high level, and ignores orphan \E
74      instances, patterns such as [\Q\E] or [\E] or even [^\E] cause an error,      instances, patterns such as [\Q\E] or [\E] or even [^\E] cause an error,
75      because the ] is interpreted as the first data character and the      because the ] is interpreted as the first data character and the
76      terminating ] is not found. PCRE has been made compatible with Perl in this      terminating ] is not found. PCRE has been made compatible with Perl in this
77      regard. Previously, it interpreted [\Q\E] as an empty class, and [\E] could      regard. Previously, it interpreted [\Q\E] as an empty class, and [\E] could
78      cause memory overwriting.      cause memory overwriting.
79    
80  10. Like Perl, PCRE automatically breaks an unlimited repeat after an empty  10. Like Perl, PCRE automatically breaks an unlimited repeat after an empty
81      string has been matched (to stop an infinite loop). It was not recognizing      string has been matched (to stop an infinite loop). It was not recognizing
82      a conditional subpattern that could match an empty string if that      a conditional subpattern that could match an empty string if that
83      subpattern was within another subpattern. For example, it looped when      subpattern was within another subpattern. For example, it looped when
84      trying to match  (((?(1)X|))*)  but it was OK with  ((?(1)X|)*)  where the      trying to match  (((?(1)X|))*)  but it was OK with  ((?(1)X|)*)  where the
85      condition was not nested. This bug has been fixed.      condition was not nested. This bug has been fixed.
86    
87    12. A pattern like \X?\d or \P{L}?\d in non-UTF-8 mode could cause a backtrack
88        past the start of the subject in the presence of bytes with the top bit
89        set, for example "\x8aBCD".
90    
91    13. Added Perl 5.10 experimental backtracking controls (*FAIL), (*F), (*PRUNE),
92        (*SKIP), (*THEN), (*COMMIT), and (*ACCEPT).
93    
94    14. Optimized (?!) to (*FAIL).
95    
96    15. Updated the test for a valid UTF-8 string to conform to the later RFC 3629.
97        This restricts code points to be within the range 0 to 0x10FFFF, excluding
98        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
100        does: it's just the validity check that is more restrictive.
101    
102    16. Inserted checks for integer overflows during escape sequence (backslash)
103        processing, and also fixed erroneous offset values for syntax errors during
104        backslash processing.
105    
106    
107  Version 7.2 19-Jun-07  Version 7.2 19-Jun-07
108  ---------------------  ---------------------

Legend:
Removed from v.206  
changed lines
  Added in v.213

  ViewVC Help
Powered by ViewVC 1.1.5