Clang static analysis found an error return that was being
ignored. If copying data from an archive into a file on disk
fails with a fatal read error, exit with an error, since we
can't progress if the archive is broken. If it fails writing
to the file on disk, arrange for cpio to exit with an error.
Rename 'copy_data' to 'extract_data' to make it clearer that
it's only used when extracting data to disk.
Thanks to Michihiro NAKAJIMA for performing the analysis and fixing
most of the issues found.