Index: source/test/testdata/regextst.txt =================================================================== --- source/test/testdata/regextst.txt (revision 30243) +++ source/test/testdata/regextst.txt (revision 30244) @@ -1,4 +1,4 @@ -# Copyright (c) 2001-2010 International Business Machines +# Copyright (c) 2001-2011 International Business Machines # Corporation and others. All Rights Reserved. # # file: @@ -1024,11 +1024,15 @@ "(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "<0><1>94040</1><2>-3344</2></0>" "(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "94040-0000" "(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "00000-3344" + +# +# Bug 8666. Assertion failure on match, bad operand to JMP_SAV_X opcode. # +"((.??)+|A)*" "<0><1><2></2></1></0>AAAAABBBBBCCCCCDDDDEEEEE" + # Random debugging, Temporary # #"^(?:a?b?)*$" "a--" -"^(?:a?b?)*$" "a--" "This is a string with (?:one |two |three )endings" "<0>This is a string with two endings</0>" "((?:a|b|c)whoop-dee-do) | [jkl]|zed" "x" Index: source/i18n/regexcmp.cpp =================================================================== --- source/i18n/regexcmp.cpp (revision 30243) +++ source/i18n/regexcmp.cpp (revision 30244) @@ -1962,6 +1962,7 @@ opType == URX_CTR_LOOP || opType == URX_CTR_LOOP_NG || opType == URX_JMP_SAV || + opType == URX_JMP_SAV_X || opType == URX_RELOC_OPRND) && opValue > where) { // Target location for this opcode is after the insertion point and // needs to be incremented to adjust for the insertion.