Not sure exactly why, but sometimes the pointer isn't valid. I'm not sure if this is for any data, just arrays, or whatever. The old "check" method would simply skip over invalid pointers. That may be fine, but I'd like to understand what's actually happening.