From 77833b90c8d93b86904b744f7be2926ba377ca6e Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Tue, 23 Jul 2013 15:42:55 +0200 Subject: Fix crashes when invoking toVariant() on empty QJsonValue objects. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I51cd114e862c6fad564484e990348f324ad56ab9 Reviewed-by: Jędrzej Nowacki --- src/corelib/json/qjsonvalue.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/corelib/json') 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(base)).toVariantList(); + return d ? + QJsonArray(d, static_cast(base)).toVariantList() : + QVariantList(); case Object: - return QJsonObject(d, static_cast(base)).toVariantMap(); + return d ? + QJsonObject(d, static_cast(base)).toVariantMap() : + QVariantMap(); case Null: case Undefined: break; -- cgit v1.2.3