summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Keeler <jacob.keeler@livioradio.com>2022-04-05 09:29:23 -0400
committerGitHub <noreply@github.com>2022-04-05 09:29:23 -0400
commit7edef2f006c58f3dbaa36f88d3922ac3b1fbc447 (patch)
treee2ed38ca7a6541f8c114f8ac8ef55cee7139ca01
parentb380f4865aaa7c68cab72c67e32f29ae17c4cc1c (diff)
downloadsdl_core-7edef2f006c58f3dbaa36f88d3922ac3b1fbc447.tar.gz
Check if JSON value is a map before accessing members (#3896)
-rw-r--r--src/components/security_manager/src/security_manager_impl.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/components/security_manager/src/security_manager_impl.cc b/src/components/security_manager/src/security_manager_impl.cc
index 75cc104d95..59f6da22be 100644
--- a/src/components/security_manager/src/security_manager_impl.cc
+++ b/src/components/security_manager/src/security_manager_impl.cc
@@ -607,10 +607,11 @@ bool SecurityManagerImpl::ProcessInternalError(
Json::Value root;
utils::JsonReader reader;
- if (!reader.parse(str, &root)) {
+ if (!reader.parse(str, &root) || !root.isObject()) {
SDL_LOG_DEBUG("Json parsing fails.");
return false;
}
+
uint8_t id = root[kErrId].asInt();
SDL_LOG_DEBUG("Received InternalError id " << std::to_string(id) << ", text: "
<< root[kErrText].asString());