From 5dfd48331f3eeafd0fdccc001e69b32a3b18497d Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Thu, 19 Oct 2017 13:27:31 +0200 Subject: [PATCH] Json: Avoid using iterators from temporaries Doing it can lead to unexpected behavior Change-Id: If3f838cc5b5a381d7c33223adcf53051a43b7c3c Reviewed-by: Marco Benelli --- src/libs/utils/json.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/libs/utils/json.cpp b/src/libs/utils/json.cpp index ae97e1fd528..6eb46b60dcb 100644 --- a/src/libs/utils/json.cpp +++ b/src/libs/utils/json.cpp @@ -258,13 +258,14 @@ void JsonSchema::enterNestedTypeSchema() QStringList JsonSchema::properties(JsonObjectValue *v) const { - typedef QHash::ConstIterator MemberConstIterator; + using Members = QHash; QStringList all; if (JsonObjectValue *ov = getObjectValue(kProperties(), v)) { - const MemberConstIterator cend = ov->members().constEnd(); - for (MemberConstIterator it = ov->members().constBegin(); it != cend; ++it) + const Members members = ov->members(); + const Members::ConstIterator cend = members.constEnd(); + for (Members::ConstIterator it = members.constBegin(); it != cend; ++it) if (hasPropertySchema(it.key())) all.append(it.key()); }