There is more to my get_files sub that does a foreach (@array) and then checks the files for certain criteria.
The only thing I can think of is that the find could be finding a number of files in a directory first and then filling in the names and so if the file is gone in the middle of the operation $File::Find::name will fail because the file name isn't defined.