diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/json/qjsonvalue.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/corelib/json/qjsonvalue.cpp b/src/corelib/json/qjsonvalue.cpp index a540626579..3fbc811948 100644 --- a/src/corelib/json/qjsonvalue.cpp +++ b/src/corelib/json/qjsonvalue.cpp @@ -384,9 +384,13 @@ QVariant QJsonValue::toVariant() const case String: return toString(); case Array: - return QJsonArray(d, static_cast<QJsonPrivate::Array *>(base)).toVariantList(); + return d ? + QJsonArray(d, static_cast<QJsonPrivate::Array *>(base)).toVariantList() : + QVariantList(); case Object: - return QJsonObject(d, static_cast<QJsonPrivate::Object *>(base)).toVariantMap(); + return d ? + QJsonObject(d, static_cast<QJsonPrivate::Object *>(base)).toVariantMap() : + QVariantMap(); case Null: case Undefined: break; |