mostly fix parsing of non-default files
restore the old needData logic, it works better