platform_system_core/include/ziparchive
Tao Bao a456c21348 ziparchive: Allow ExtractEntryToFile() to work with block device.
FileWriter::Create() calls ftruncate(2) to truncate the destination
file, which doesn't work with FD that references a block device. It
leads to kIoError when calling ExtractEntryToFile() to extract an entry
to block device FD.

As a result, it fails the package_extract_file() command in OTA updates
(e.g. 'package_extract_file("boot.img",
"/dev/block/platform/soc.0/f9824900.sdhci/by-name/boot")').

This CL skips the call to ftruncate(2) if FD references a block device.

Bug: 32903624
Test: ziparchive-tests works.
Test: Build an OTA updater (m updater) and call package_extract_file().

Change-Id: Ia81116f1a8d7cab802396bdc32c6096b4cb56a3c
2016-11-15 10:19:04 -08:00
..
zip_archive.h ziparchive: Allow ExtractEntryToFile() to work with block device. 2016-11-15 10:19:04 -08:00
zip_archive_stream_entry.h Add a ZipArchiveStreamEntry class. 2016-01-14 12:30:20 -08:00
zip_writer.h Allow setting an arbitrary alignment for an entry. 2016-01-19 13:55:53 -08:00