diff options
author | Lars Knoll <lars.knoll@nokia.com> | 2012-01-07 17:39:39 +0100 |
---|---|---|
committer | Jamey Hicks <jamey.hicks@nokia.com> | 2012-01-09 12:25:59 +0100 |
commit | 73790e615bf9d383dc6c8c9462928c74783e7071 (patch) | |
tree | a2edbb6c3e4f0c9f6bc464060e761f4ec192e5db /src | |
parent | 21777c47da86d4e7207ee474e7a7a14a294aa35f (diff) |
Ensure the header is always little endian
Change-Id: Iacc90feb38e99a02d46f8184ac80deca5009210e
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Reviewed-by: Jamey Hicks <jamey.hicks@nokia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/qjson.cpp | 2 | ||||
-rw-r--r-- | src/qjson_p.h | 4 | ||||
-rw-r--r-- | src/qjsondocument.cpp | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/qjson.cpp b/src/qjson.cpp index fb31187..0b37d99 100644 --- a/src/qjson.cpp +++ b/src/qjson.cpp @@ -122,7 +122,7 @@ void Data::validate() if (valid != Unchecked) return; - if (header->tag != QBJS_Tag || header->version != 1) { + if (header->tag != QBJS_Tag || header->version != 1u) { valid = Invalid; return; } diff --git a/src/qjson_p.h b/src/qjson_p.h index 6cbf53d..86a6ba5 100644 --- a/src/qjson_p.h +++ b/src/qjson_p.h @@ -514,8 +514,8 @@ struct Entry { }; struct Header { - uint tag; // 'qbjs' - uint version; // 1 + qle_uint tag; // 'qbjs' + qle_uint version; // 1 Base *root() { return (Base *)(this + 1); } }; diff --git a/src/qjsondocument.cpp b/src/qjsondocument.cpp index a8776dd..3b15b64 100644 --- a/src/qjsondocument.cpp +++ b/src/qjsondocument.cpp @@ -107,7 +107,7 @@ JsonDocument JsonDocument::fromBinaryData(const QByteArray &data) Header *h = (Header *) data.constData(); if (data.size() < (int)(sizeof(Header) + sizeof(Base)) || - h->tag != QBJS_Tag || h->version != 1 || + h->tag != QBJS_Tag || h->version != 1u || sizeof(Header) + h->root()->size > (uint)data.size()) return JsonDocument(); |