From 25c56979dd85a33a6467949ab76f99a987a0a006 Mon Sep 17 00:00:00 2001 From: Sen Jiang Date: Tue, 10 May 2016 15:23:25 -0700 Subject: Use bspatch from external/bsdiff. Now ApplyBSDiffPatch() will stream the output to sink as we go instead of sinking everything at the end. Test: recovery_host_test Bug: 26982501 Change-Id: I05b6ed40d45e4b1b19ae72784cf705b731b976e3 --- applypatch/imgpatch.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'applypatch/imgpatch.cpp') diff --git a/applypatch/imgpatch.cpp b/applypatch/imgpatch.cpp index 00ea90efa..8f4a2a42b 100644 --- a/applypatch/imgpatch.cpp +++ b/applypatch/imgpatch.cpp @@ -193,6 +193,9 @@ int ApplyImagePatch(const unsigned char* old_data, ssize_t old_size, const Value // Next, apply the bsdiff patch (in memory) to the uncompressed data. std::vector uncompressed_target_data; + // TODO(senj): Remove the only usage of ApplyBSDiffPatchMem here, + // replace it with ApplyBSDiffPatch with a custom sink function that + // wraps the given sink function to stream output to save memory. if (ApplyBSDiffPatchMem(expanded_source.data(), expanded_len, patch, patch_offset, &uncompressed_target_data) != 0) { return -1; -- cgit v1.2.3