Sprite inconsistency

Example:

var parent:Sprite = new Sprite();
var child1:Sprite = new Sprite();
var child2:Sprite = new Sprite();
var bmpd:BitmapData = new BitmapData(1,1);
child1.addChild(new Bitmap(bmpd));
child1.x = 100;
child1.scaleX = 0;
child1.scaleY = 0;
                
child2.addChild(new Bitmap(bmpd));
                
parent.addChild(s2);
parent.addChild(s3);
trace(parent.width);

So, in Flash and native legacy trace returns 100, in native next it is 1.
Why?

This seems like a weird edge case, is it consistent if scale is greater than zero?

This would be a good thing to add to unit tests :slight_smile:

If scale is greater than 0, it works fine. I just have 0 in my project, so I’ve caught this bug.