summaryrefslogtreecommitdiff
path: root/chromium/components/arc/arc_features_parser.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/components/arc/arc_features_parser.cc
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-85-based.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/components/arc/arc_features_parser.cc')
-rw-r--r--chromium/components/arc/arc_features_parser.cc25
1 files changed, 12 insertions, 13 deletions
diff --git a/chromium/components/arc/arc_features_parser.cc b/chromium/components/arc/arc_features_parser.cc
index 9dfc871dc0f..75ec90b1ed7 100644
--- a/chromium/components/arc/arc_features_parser.cc
+++ b/chromium/components/arc/arc_features_parser.cc
@@ -9,6 +9,7 @@
#include "base/bind.h"
#include "base/files/file_util.h"
#include "base/json/json_reader.h"
+#include "base/logging.h"
#include "base/stl_util.h"
#include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
@@ -30,19 +31,16 @@ constexpr const base::FilePath::CharType kArcFeaturesJsonFile[] =
base::Optional<ArcFeatures> ParseFeaturesJson(base::StringPiece input_json) {
ArcFeatures arc_features;
- int error_code;
- std::string error_msg;
- std::unique_ptr<base::Value> json_value =
- base::JSONReader::ReadAndReturnErrorDeprecated(
- input_json, base::JSON_PARSE_RFC, &error_code, &error_msg);
- if (!json_value || !json_value->is_dict()) {
- LOG(ERROR) << "Error parsing feature JSON: " << error_msg;
+ base::JSONReader::ValueWithError parsed_json =
+ base::JSONReader::ReadAndReturnValueWithError(input_json);
+ if (!parsed_json.value || !parsed_json.value->is_dict()) {
+ LOG(ERROR) << "Error parsing feature JSON: " << parsed_json.error_message;
return base::nullopt;
}
// Parse each item under features.
const base::Value* feature_list =
- json_value->FindKeyOfType("features", base::Value::Type::LIST);
+ parsed_json.value->FindKeyOfType("features", base::Value::Type::LIST);
if (!feature_list) {
LOG(ERROR) << "No feature list in JSON.";
return base::nullopt;
@@ -65,8 +63,9 @@ base::Optional<ArcFeatures> ParseFeaturesJson(base::StringPiece input_json) {
}
// Parse each item under unavailable_features.
- const base::Value* unavailable_feature_list = json_value->FindKeyOfType(
- "unavailable_features", base::Value::Type::LIST);
+ const base::Value* unavailable_feature_list =
+ parsed_json.value->FindKeyOfType("unavailable_features",
+ base::Value::Type::LIST);
if (!unavailable_feature_list) {
LOG(ERROR) << "No unavailable feature list in JSON.";
return base::nullopt;
@@ -85,8 +84,8 @@ base::Optional<ArcFeatures> ParseFeaturesJson(base::StringPiece input_json) {
}
// Parse each item under properties.
- const base::Value* properties =
- json_value->FindKeyOfType("properties", base::Value::Type::DICTIONARY);
+ const base::Value* properties = parsed_json.value->FindKeyOfType(
+ "properties", base::Value::Type::DICTIONARY);
if (!properties) {
LOG(ERROR) << "No properties in JSON.";
return base::nullopt;
@@ -101,7 +100,7 @@ base::Optional<ArcFeatures> ParseFeaturesJson(base::StringPiece input_json) {
}
// Parse the Play Store version
- const base::Value* play_version = json_value->FindKeyOfType(
+ const base::Value* play_version = parsed_json.value->FindKeyOfType(
"play_store_version", base::Value::Type::STRING);
if (!play_version) {
LOG(ERROR) << "No Play Store version in JSON.";