summaryrefslogtreecommitdiff
path: root/src/components/policy/policy_regular/src/cache_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/policy/policy_regular/src/cache_manager.cc')
-rw-r--r--src/components/policy/policy_regular/src/cache_manager.cc20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/components/policy/policy_regular/src/cache_manager.cc b/src/components/policy/policy_regular/src/cache_manager.cc
index 9c73d88e63..743b9eff6c 100644
--- a/src/components/policy/policy_regular/src/cache_manager.cc
+++ b/src/components/policy/policy_regular/src/cache_manager.cc
@@ -40,7 +40,7 @@
#include <sstream>
#include "interfaces/MOBILE_API.h"
-#include "json/features.h"
+#include "json/json_features.h"
#include "json/reader.h"
#include "json/writer.h"
#include "smart_objects/enum_schema_item.h"
@@ -1853,13 +1853,16 @@ bool CacheManager::LoadFromFile(const std::string& file_name,
return false;
}
+ Json::CharReaderBuilder reader_builder;
+ Json::CharReaderBuilder::strictMode(&reader_builder.settings_);
+ auto reader =
+ std::unique_ptr<Json::CharReader>(reader_builder.newCharReader());
Json::Value value;
- Json::Reader reader(Json::Features::strictMode());
+ JSONCPP_STRING err;
std::string json(json_string.begin(), json_string.end());
- if (!reader.parse(json.c_str(), value)) {
- LOG4CXX_FATAL(
- logger_,
- "Preloaded PT is corrupted: " << reader.getFormattedErrorMessages());
+ const size_t json_len = json.length();
+ if (!reader->parse(json.c_str(), json.c_str() + json_len, &value, &err)) {
+ LOG4CXX_FATAL(logger_, "Preloaded PT is corrupted: " << err);
return false;
}
@@ -1868,9 +1871,10 @@ bool CacheManager::LoadFromFile(const std::string& file_name,
table = policy_table::Table(&value);
- Json::StyledWriter s_writer;
+ Json::StreamWriterBuilder writer_builder;
LOG4CXX_DEBUG(logger_, "PT out:");
- LOG4CXX_DEBUG(logger_, s_writer.write(table.ToJsonValue()));
+ LOG4CXX_DEBUG(logger_,
+ Json::writeString(writer_builder, table.ToJsonValue()));
MakeLowerCaseAppNames(table);