From 511d75962789837231459e53e86eaaa6a1ff6e06 Mon Sep 17 00:00:00 2001 From: Tao Bao Date: Tue, 19 Jun 2018 15:56:49 -0700 Subject: edify: Remove VAL_INVALID and move ValueType into Value class. Test: mmma -j bootable/recovery Test: Run recovery_component_test and recovery_unit_test on marlin. Change-Id: I4b240e3e771c387b9694be9c0f2f74e0265ab4cb --- updater/blockimg.cpp | 21 +++++++++++---------- updater/install.cpp | 22 +++++++++++----------- 2 files changed, 22 insertions(+), 21 deletions(-) (limited to 'updater') diff --git a/updater/blockimg.cpp b/updater/blockimg.cpp index fc713859b..6a6236b1b 100644 --- a/updater/blockimg.cpp +++ b/updater/blockimg.cpp @@ -1403,7 +1403,8 @@ static int PerformCommandDiff(CommandParameters& params) { if (status == 0) { LOG(INFO) << "patching " << blocks << " blocks to " << tgt.blocks(); Value patch_value( - VAL_BLOB, std::string(reinterpret_cast(params.patch_start + offset), len)); + Value::Type::BLOB, + std::string(reinterpret_cast(params.patch_start + offset), len)); RangeSinkWriter writer(params.fd, tgt); if (params.cmdname[0] == 'i') { // imgdiff @@ -1531,19 +1532,19 @@ static Value* PerformBlockImageUpdate(const char* name, State* state, const std::unique_ptr& new_data_fn = args[2]; const std::unique_ptr& patch_data_fn = args[3]; - if (blockdev_filename->type != VAL_STRING) { + if (blockdev_filename->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "blockdev_filename argument to %s must be string", name); return StringValue(""); } - if (transfer_list_value->type != VAL_BLOB) { + if (transfer_list_value->type != Value::Type::BLOB) { ErrorAbort(state, kArgsParsingFailure, "transfer_list argument to %s must be blob", name); return StringValue(""); } - if (new_data_fn->type != VAL_STRING) { + if (new_data_fn->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "new_data_fn argument to %s must be string", name); return StringValue(""); } - if (patch_data_fn->type != VAL_STRING) { + if (patch_data_fn->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "patch_data_fn argument to %s must be string", name); return StringValue(""); } @@ -1944,11 +1945,11 @@ Value* RangeSha1Fn(const char* name, State* state, const std::vector& blockdev_filename = args[0]; const std::unique_ptr& ranges = args[1]; - if (blockdev_filename->type != VAL_STRING) { + if (blockdev_filename->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "blockdev_filename argument to %s must be string", name); return StringValue(""); } - if (ranges->type != VAL_STRING) { + if (ranges->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "ranges argument to %s must be string", name); return StringValue(""); } @@ -2010,7 +2011,7 @@ Value* CheckFirstBlockFn(const char* name, State* state, const std::unique_ptr& arg_filename = args[0]; - if (arg_filename->type != VAL_STRING) { + if (arg_filename->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "filename argument to %s must be string", name); return StringValue(""); } @@ -2065,11 +2066,11 @@ Value* BlockImageRecoverFn(const char* name, State* state, const std::unique_ptr& filename = args[0]; const std::unique_ptr& ranges = args[1]; - if (filename->type != VAL_STRING) { + if (filename->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "filename argument to %s must be string", name); return StringValue(""); } - if (ranges->type != VAL_STRING) { + if (ranges->type != Value::Type::STRING) { ErrorAbort(state, kArgsParsingFailure, "ranges argument to %s must be string", name); return StringValue(""); } diff --git a/updater/install.cpp b/updater/install.cpp index 9d108e0ed..02a6fe7c5 100644 --- a/updater/install.cpp +++ b/updater/install.cpp @@ -191,7 +191,7 @@ Value* PackageExtractFileFn(const char* name, State* state, zip_path.c_str(), buffer.size(), ErrorCodeString(ret)); } - return new Value(VAL_BLOB, buffer); + return new Value(Value::Type::BLOB, buffer); } } @@ -238,10 +238,10 @@ Value* ApplyPatchFn(const char* name, State* state, } for (int i = 0; i < patchcount; ++i) { - if (arg_values[i * 2]->type != VAL_STRING) { + if (arg_values[i * 2]->type != Value::Type::STRING) { return ErrorAbort(state, kArgsParsingFailure, "%s(): sha-1 #%d is not string", name, i * 2); } - if (arg_values[i * 2 + 1]->type != VAL_BLOB) { + if (arg_values[i * 2 + 1]->type != Value::Type::BLOB) { return ErrorAbort(state, kArgsParsingFailure, "%s(): patch #%d is not blob", name, i * 2 + 1); } } @@ -741,8 +741,8 @@ Value* RunProgramFn(const char* name, State* state, const std::vector>& argv) { if (argv.size() != 1) { return ErrorAbort(state, kArgsParsingFailure, "%s() expects 1 arg, got %zu", name, argv.size()); @@ -750,18 +750,18 @@ Value* ReadFileFn(const char* name, State* state, const std::vector args; if (!ReadArgs(state, argv, &args)) { - return ErrorAbort(state, kArgsParsingFailure, "%s() Failed to parse the argument(s)", name); + return ErrorAbort(state, kArgsParsingFailure, "%s(): Failed to parse the argument(s)", name); } const std::string& filename = args[0]; - Value* v = new Value(VAL_INVALID, ""); - FileContents fc; if (LoadFileContents(filename.c_str(), &fc) == 0) { - v->type = VAL_BLOB; - v->data = std::string(fc.data.begin(), fc.data.end()); + return new Value(Value::Type::BLOB, std::string(fc.data.cbegin(), fc.data.cend())); } - return v; + + // Leave it to caller to handle the failure. + LOG(ERROR) << name << ": Failed to read " << filename; + return StringValue(""); } // write_value(value, filename) -- cgit v1.2.3