@@ -27,6 +27,7 @@
all : fixed StringTools.hex with negative numbers
flash9 : fixed Type.typeof(1<<28) was TFloat
flash9 : use flash.XML parser for Xml class implementation
+ neko : fixed Array.splice (was not setting null at end of array)
2010-01-09: 2.05
js : added js.Scroll
@@ -260,8 +260,11 @@ class NekoArray__<T> implements Array<T> {
var a = this.__a;
var ret = Array.new1(__dollar__asub(a,pos,len),len);
var end = pos + len;
- __dollar__ablit(a,pos,a,end,this.length-end);
+ var count = this.length-end;
+ __dollar__ablit(a,pos,a,end,count);
this.length -= len;
+ while( --count >= 0 )
+ a[end + count] = null;
return ret;
}
@@ -17,6 +17,13 @@ class TestBasetypes extends Test {
eq( a[0], 1 );
eq( a[1], 3 );
eq( a[2], null );
+
+ var a : Array<Null<Int>> = [1,2,3];
+ a.splice(1,1);
+ eq( a.length, 2 );
+ eq( a[0], 1 );
+ eq( a[1], 3 );
+ eq( a[2], null );
function testString() {