regress-294195-01.js (995B)
1 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 //----------------------------------------------------------------------------- 7 var BUGNUMBER = 294195; 8 var summary = 'Do not crash during String replace when accessing methods on backreferences'; 9 var actual = 'No Crash'; 10 var expect = 'No Crash'; 11 12 printBugNumber(BUGNUMBER); 13 printStatus (summary); 14 15 var s = 'some text sample'; 16 17 // this first version didn't crash 18 var result = s.replace(new RegExp('(^|\\s)(text)'), (new String('$1'))); 19 result = result.substr(0, 1); 20 reportCompare(expect, actual, inSection(1) + ' ' + summary); 21 22 // the original version however did crash. 23 result = s.replace(new RegExp('(^|\\s)(text)'), 24 (new String('$1')).substr(0, 1)); 25 reportCompare(expect, actual, inSection(2) + ' ' + summary);