diff options
-rw-r--r-- | libsolidity/ast/ASTJsonConverter.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libsolidity/ast/ASTJsonConverter.cpp b/libsolidity/ast/ASTJsonConverter.cpp index fdec8945..6d541803 100644 --- a/libsolidity/ast/ASTJsonConverter.cpp +++ b/libsolidity/ast/ASTJsonConverter.cpp @@ -91,11 +91,19 @@ void ASTJsonConverter::setJsonNode( )) { if (e.second.isObject()) + { + if (!m_currentValue["children"].isArray()) + m_currentValue["children"] = Json::arrayValue; appendMove(m_currentValue["children"], std::move(e.second)); + } if (e.second.isArray()) for (auto& child: e.second) if (!child.isNull()) + { + if (!m_currentValue["children"].isArray()) + m_currentValue["children"] = Json::arrayValue; appendMove(m_currentValue["children"], std::move(child)); + } } else { |