 				projectionSrsCode = result.projection;
 				
 				// handle metadata tiles
-				_geometryStreamDecoder.decodeMetadataTileList(result.metadataTileDescriptors);
+				StageUtils.callLater(this, _geometryStreamDecoder.decodeMetadataTileList, [result.metadataTileDescriptors]);
 				
 				// handle geometry tiles
-				_geometryStreamDecoder.decodeGeometryTileList(result.geometryTileDescriptors);
+				StageUtils.callLater(this, _geometryStreamDecoder.decodeGeometryTileList, [result.geometryTileDescriptors]);
 				
 			}
 			catch (error:Error)


		private function handleMetadataStreamDownload(event:ResultEvent, token:Object = null):void
		{
			_streamDownloadCounter--;
			
			if (event.result == null)
			{

	import weave.api.core.ICallbackInterface;
	import weave.api.data.AttributeColumnMetadata;
	import weave.api.data.IQualifiedKey;
	import weave.api.getCallbackCollection;
	import weave.api.newLinkableChild;
	import weave.api.primitives.IBounds2D;
	import weave.api.registerDisposableChild;
