Добрый день, что то я не вижу ошибку...

Код:
private function loadContent()
{
try
{
xmlLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, onLoaded);
xmlLoader.load(new URLRequest("gallery.xml"));
}
catch(e:Error)
{
trace("cant load galerry content");
}
}

Код:
private function onLoaded(e:Event):void
{
source = XML(e.target.data);
xmlLoader.removeEventListener(Event.COMPLETE,onLoaded);
var imageList:XMLList = source.*.photo;
for each(var item:XML in imageList)
{
var path:String = item.@path;
loadImage(path);
}
}

Код:
private function loadImage(image:String):void
{
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoadPic);
try
{
imageLoader.load(new URLRequest(image));
}
catch(e:Error)
{
trace("error loading image");
}
}

Код:
private function onLoadPic(e:Event):void
{
items.push(Bitmap(imageLoader.content));
}
1. Читаю xml, получаю пути к катинкам
2. Гружу картинки и добавляю их в массив items
3. Когда все это отрабатывает в массиве items оказывается только 1 элемент. Почему метод onLoadPic вызывается только 1 раз ?