From c6c31b14a73674459eb5e762bb7487900b8c4b36 Mon Sep 17 00:00:00 2001 From: Ivan Komissarov Date: Sat, 20 Oct 2018 17:28:18 +0200 Subject: qjson: add missed Q_CHECK_PTR There might be dereferencing of a potential null pointer 'h' Task-number: QTBUG-71156 Change-Id: I63c34f8cba3e358f109d70ff9b34199c31895202 Reviewed-by: Thiago Macieira Reviewed-by: Mikhail Svetkin --- src/corelib/serialization/qjson.cpp | 1 + src/corelib/serialization/qjsonparser.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/src/corelib/serialization/qjson.cpp b/src/corelib/serialization/qjson.cpp index b82923fe0c..d74ffb2a20 100644 --- a/src/corelib/serialization/qjson.cpp +++ b/src/corelib/serialization/qjson.cpp @@ -70,6 +70,7 @@ void Data::compact() int size = sizeof(Base) + reserve + base->length*sizeof(offset); int alloc = sizeof(Header) + size; Header *h = (Header *) malloc(alloc); + Q_CHECK_PTR(h); h->tag = QJsonDocument::BinaryFormatTag; h->version = 1; Base *b = h->root(); diff --git a/src/corelib/serialization/qjsonparser.cpp b/src/corelib/serialization/qjsonparser.cpp index 39738b90a8..bfba95520e 100644 --- a/src/corelib/serialization/qjsonparser.cpp +++ b/src/corelib/serialization/qjsonparser.cpp @@ -304,6 +304,7 @@ QJsonDocument Parser::parse(QJsonParseError *error) // allocate some space dataLength = qMax(end - json, (ptrdiff_t) 256); data = (char *)malloc(dataLength); + Q_CHECK_PTR(data); // fill in Header data QJsonPrivate::Header *h = (QJsonPrivate::Header *)data; -- cgit v1.2.3