Bug 1263340 - Part 4: Followup for @@split - Apply optimized path for empty string too. r=till

This commit is contained in:
Tooru Fujisawa 2016-05-18 04:26:41 +09:00
parent 9e176d8f04
commit 642f05ea77

View File

@ -601,12 +601,9 @@ function RegExpSplit(string, limit) {
// Steps 6-7.
var unicodeMatching = callFunction(std_String_includes, flags, "u");
// Step 14 (reordered).
var size = S.length;
var optimizable = IsRegExpSplitOptimizable(rx, C);
var splitter;
if (optimizable && size !== 0) {
if (optimizable) {
// Steps 8-9 (skipped).
// Step 10.
@ -637,17 +634,24 @@ function RegExpSplit(string, limit) {
else
lim = limit >>> 0;
// Step 16;
// Step 15.
var p = 0;
// Step 16;
// Step 16.
if (lim === 0)
return A;
// Step 14 (reordered).
var size = S.length;
// Step 17.
if (size === 0) {
// Step 17.a.
var z = RegExpExec(splitter, S, false);
var z;
if (optimizable)
z = RegExpMatcher(splitter, S, 0);
else
z = RegExpExec(splitter, S, false);
// Step 17.b.
if (z !== null)