JavaScriptCore:
authordarin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 17 Dec 2007 01:26:54 +0000 (01:26 +0000)
committerdarin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 17 Dec 2007 01:26:54 +0000 (01:26 +0000)
commitb7625c4c3378c70e252ea3d625a173de325bccce
tree2b241e52a1b186cb18ec97651289a3caa3b7b4a2
parent6618b1d28d33c20eb9c08a198e381898f9ba2252
JavaScriptCore:

        Reviewed by Maciej.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16459
          REGRESSION: assertion failure with regexp with \B in a case-ignoring character range
          <rdar://problem/5646361>

        The problem was that \B was not handled properly in character classes.

        Test: fast/js/regexp-overflow.html

        * pcre/pcre_compile.cpp:
        (check_escape): Added handling of ESC_b and ESC_B in character classes here.
        Allows us to get rid of the handling of \b in character classes from all the
        call sites that handle it separately and to handle \B properly as well.
        (compileBranch): Remove the ESC_b handling, since it's not needed any more.
        (calculateCompiledPatternLengthAndFlags): Ditto.

LayoutTests:

        Reviewed by Maciej.

        - test for http://bugs.webkit.org/show_bug.cgi?id=16459
          REGRESSION: assertion failure with regexp with \B in a case-ignoring character range
          <rdar://problem/5646361>

        * fast/js/regexp-overflow-expected.txt: Updated.
        * fast/js/resources/regexp-overflow.js: Added test cases.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28785 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JavaScriptCore/ChangeLog
JavaScriptCore/pcre/pcre_compile.cpp
LayoutTests/ChangeLog
LayoutTests/fast/js/regexp-overflow-expected.txt
LayoutTests/fast/js/resources/regexp-overflow.js