I am a bit new to Starling as well, but I am 99% sure Textures have to be disposed so they get removed from gpu memory. I do not have Adobe Scout installed at the moment so I can not confirm yet.
Anyways, I just realized that page.rendererObject in that case actually is a Texture, not a BitmapData. So you are actually disposing the Texture. So there is a bug in the unload() Function:
public function unloadPage (page:AtlasPage) : void {
BitmapData(page.rendererObject).dispose();
}
Obviously it crashes. Instead it should be:
public function unloadPage (page:AtlasPage) : void {
var texture: Texture = page.rendererObject as Texture;
texture.dispose();
}
This works. The BitmapData will not be disposed here at all. Which is fine, because it is also not instantiated here.