applypatch: Let Apply{BSDiff,Image}Patch accept std::function.
Test: mmma bootable/recovery system/update_engine Test: recovery_component_test Change-Id: I93c2caa87bf94a53509bb37f98f2c02bcadb6f5c
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
#include <stdint.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
@@ -41,7 +42,7 @@ struct FileContents {
|
||||
// and use it as the source instead.
|
||||
#define CACHE_TEMP_SOURCE "/cache/saved.file"
|
||||
|
||||
using SinkFn = size_t (*)(const unsigned char*, size_t, void*);
|
||||
using SinkFn = std::function<size_t(const unsigned char*, size_t)>;
|
||||
|
||||
// applypatch.cpp
|
||||
int ShowLicenses();
|
||||
@@ -67,13 +68,13 @@ int SaveFileContents(const char* filename, const FileContents* file);
|
||||
// bspatch.cpp
|
||||
void ShowBSDiffLicense();
|
||||
int ApplyBSDiffPatch(const unsigned char* old_data, size_t old_size, const Value* patch,
|
||||
size_t patch_offset, SinkFn sink, void* token, SHA_CTX* ctx);
|
||||
size_t patch_offset, SinkFn sink, SHA_CTX* ctx);
|
||||
int ApplyBSDiffPatchMem(const unsigned char* old_data, size_t old_size, const Value* patch,
|
||||
size_t patch_offset, std::vector<unsigned char>* new_data);
|
||||
|
||||
// imgpatch.cpp
|
||||
int ApplyImagePatch(const unsigned char* old_data, size_t old_size, const Value* patch, SinkFn sink,
|
||||
void* token, SHA_CTX* ctx, const Value* bonus_data);
|
||||
SHA_CTX* ctx, const Value* bonus_data);
|
||||
|
||||
// freecache.cpp
|
||||
int MakeFreeSpaceOnCache(size_t bytes_needed);
|
||||
|
||||
@@ -19,9 +19,11 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
|
||||
using SinkFn = size_t (*)(const unsigned char*, size_t, void*);
|
||||
#include <functional>
|
||||
|
||||
using SinkFn = std::function<size_t(const unsigned char*, size_t)>;
|
||||
|
||||
int ApplyImagePatch(const unsigned char* old_data, size_t old_size, const unsigned char* patch_data,
|
||||
size_t patch_size, SinkFn sink, void* token);
|
||||
size_t patch_size, SinkFn sink);
|
||||
|
||||
#endif // _APPLYPATCH_IMGPATCH_H
|
||||
|
||||
Reference in New Issue
Block a user