SharedObject unexpected behavior or bug?
var a:SharedObject = SharedObject.getLocal("test");
trace(a.data.userData);
var d:Array = [1,2];
a.data.userData = d;
a.flush();
d.shift();
I find this behavior odd. If you run this, the first time you'll get nothing in the trace as userData hasn't been initialized. The second time you will get just '2' traced, when I'd expect '1,2'. I find it odd because I've called flush to commit the SO changes to disk. However doing a shift on the array affects the array in userData. I get passed by reference and all, but I think this amounts to a bug - affecting it after the flush() has been run. I've probably seen this before but it caught me off-guard yesterday and took some looking to figure out what was happening.