Eliminate resource leaks from zip::ZipFiles and
zip::ZipReader::OpenFromPlatformFile.

zip::ZipFiles and zip::ZipReader::OpenFromPlatformFile do not want to
take ownership of the passed-in file. On POSIX, dup the file descriptor
to pass to fopen, so that that we can safely fclose the result. On
Windows, stop closing the file handle. Fix consumers of these functions
that assumed ownership was being passed to instead close the file
themselves.

BUG=430959

Review URL: https://codereview.chromium.org/683913009

Cr-Commit-Position: refs/heads/master@{#304930}
7 files changed