Extended ByteArray cloning issue
I extended the ByteArray class, for example:
[RemoteClass(alias="MyByteArray")]
public class MyByteArray extends ByteArray {}
and cloned an instance of this class using ByteArray # readObject () / writeObject (). However, for some reason, the cloned object is a ByteArray instance and not MyByteArray. This is shown in the following example:
registerClassAlias("MyByteArray", MyByteArray);
var b1:MyByteArray = new MyByteArray();
var tmp:ByteArray = new ByteArray();
tmp.writeObject(b1);
tmp.position = 0;
var b2:* = tmp.readObject();
trace( b2 is MyByteArray ); // prints false
trace( b2 is ByteArray ); // prints true
Also, when I add some custom fields to the MyByteArray class, they are not saved with writeObject () and are not cloned ...
Can someone explain to me why the cloned object is not an instance of MyByteArray?
Thank you very much!
0
a source to share