regress-280769-5.js (966B)
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 = 280769; 8 var summary = 'Do not overflow 64K string offset'; 9 var actual = 'No Crash'; 10 var expect = 'No Crash'; 11 12 printBugNumber(BUGNUMBER); 13 printStatus (summary); 14 15 var N = 100 * 1000; 16 17 var prefix = new Array(N).join("a"); // prefix is sequence of N "a" 18 19 var suffix = "111"; 20 21 var re = new RegExp(prefix+"0?"+suffix); // re is /aaa...aaa0?111/ 22 23 var str_to_match = prefix+suffix; // str_to_match is "aaa...aaa111" 24 25 try { 26 var index = str_to_match.search(re); 27 28 expect = 0; 29 actual = index; 30 31 reportCompare(expect, actual, summary); 32 } catch (e) { 33 reportCompare(true, e instanceof Error, actual, summary); 34 }