| Index: src/array.js
|
| diff --git a/src/array.js b/src/array.js
|
| index 0d7a7cbc85e1f89a490d229fa759d047b3966fa6..28142bb1600327dc935b60262f60e50e3fac34e8 100644
|
| --- a/src/array.js
|
| +++ b/src/array.js
|
| @@ -603,16 +603,17 @@ function ArraySplice(start, delete_count) {
|
| }
|
|
|
| // SpiderMonkey, TraceMonkey and JSC treat the case where no delete count is
|
| - // given differently from when an undefined delete count is given.
|
| + // given as a request to delete all the elements from the start.
|
| + // And it differs from the case of undefined delete count.
|
| // This does not follow ECMA-262, but we do the same for
|
| // compatibility.
|
| var del_count = 0;
|
| - if (num_arguments > 1) {
|
| + if (num_arguments == 1) {
|
| + del_count = len - start_i;
|
| + } else {
|
| del_count = TO_INTEGER(delete_count);
|
| if (del_count < 0) del_count = 0;
|
| if (del_count > len - start_i) del_count = len - start_i;
|
| - } else {
|
| - del_count = len - start_i;
|
| }
|
|
|
| var deleted_elements = [];
|
|
|