| Index: src/string.js
|
| diff --git a/src/string.js b/src/string.js
|
| index 14b44ca41f3d7f248a5756b54983f09ab3a55c8e..dd5115d5bf311cb2bc827b33c240b381f480b004 100644
|
| --- a/src/string.js
|
| +++ b/src/string.js
|
| @@ -616,24 +616,22 @@ function StringSplit(separator, limit) {
|
| var subject = TO_STRING_INLINE(this);
|
| limit = (IS_UNDEFINED(limit)) ? 0xffffffff : TO_UINT32(limit);
|
|
|
| - // ECMA-262 says that if separator is undefined, the result should
|
| - // be an array of size 1 containing the entire string.
|
| - if (IS_UNDEFINED(separator)) {
|
| - return [subject];
|
| - }
|
| -
|
| var length = subject.length;
|
| if (!IS_REGEXP(separator)) {
|
| - separator = TO_STRING_INLINE(separator);
|
| + var separator_string = TO_STRING_INLINE(separator);
|
|
|
| if (limit === 0) return [];
|
|
|
| - var separator_length = separator.length;
|
| + // ECMA-262 says that if separator is undefined, the result should
|
| + // be an array of size 1 containing the entire string.
|
| + if (IS_UNDEFINED(separator)) return [subject];
|
| +
|
| + var separator_length = separator_string.length;
|
|
|
| // If the separator string is empty then return the elements in the subject.
|
| if (separator_length === 0) return %StringToArray(subject, limit);
|
|
|
| - var result = %StringSplit(subject, separator, limit);
|
| + var result = %StringSplit(subject, separator_string, limit);
|
|
|
| return result;
|
| }
|
|
|