public void VisitReflexive(ReflexiveData field)
{
SeekToOffset(field.Offset);
StructureValueCollection values = StructureReader.ReadStructure(_reader, _tagBlockLayout);
var length = (int) values.GetInteger("entry count");
uint pointer = values.GetInteger("pointer");
// Make sure the pointer looks valid
if (length < 0 || !_cache.MetaArea.ContainsBlockPointer(pointer, (int) (length*field.EntrySize)))
{
length = 0;
pointer = 0;
}
field.Length = length;
if (pointer != field.FirstEntryAddress)
field.FirstEntryAddress = pointer;
}