framework/st_things: Fix null pointer dereference issue
Pass a null pointer to strlen() would cause a crash.
@@ -910,7 +910,6 @@ int parse_things_cloud_json(const char *filename)
json_str = get_json_string_from_file(filename);
#endif
-
if (json_str == NULL) {
THINGS_LOG_V(TAG, "cloud file initialization.");
#ifdef CONFIG_ST_THINGS_SECURESTORAGE
@@ -924,8 +923,7 @@ int parse_things_cloud_json(const char *filename)
return 0;
}
#endif
- }
-
+ } else {
if (strlen(json_str) > 0) {
cJSON *root = cJSON_Parse((const char *)json_str);
if (root != NULL) {
@@ -943,6 +941,8 @@ int parse_things_cloud_json(const char *filename)
}
}
things_free(json_str);
+ }
+
THINGS_LOG_D(TAG, THINGS_FUNC_EXIT);
return ret;
}
