aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Jones <martin.jones@nokia.com>2011-05-05 13:24:32 +1000
committerMartin Jones <martin.jones@nokia.com>2011-05-30 15:47:52 +1000
commitd58472c1b1727b5695c692ab8e99545b5b6c1158 (patch)
tree16ad2496cd8dd13e6515002742b123dfb9712633 /src
parentdcb9148091cbf6872b60407c301d7c92427583a6 (diff)
Uninitialized memory is compared.
Memory is allocated and used without first clearing it. At the least this annoys valgrind, but also has potential for real problems. Change-Id: Icf3fd39f44ee0481dd732510e7f8b3ad6cef477d Task-number: QTBUG-15187 Reviewed-by: Aaron Kennedy (cherry picked from commit 95aa4e4f9b82c3652ffc93310b190db869d491df)
Diffstat (limited to 'src')
-rw-r--r--src/declarative/qml/qdeclarativeproperty.cpp2
-rw-r--r--src/declarative/qml/qmetaobjectbuilder.cpp2
2 files changed, 4 insertions, 0 deletions
diff --git a/src/declarative/qml/qdeclarativeproperty.cpp b/src/declarative/qml/qdeclarativeproperty.cpp
index 1cd33634d7..b91b820e0f 100644
--- a/src/declarative/qml/qdeclarativeproperty.cpp
+++ b/src/declarative/qml/qdeclarativeproperty.cpp
@@ -1454,6 +1454,7 @@ QByteArray QDeclarativePropertyPrivate::saveValueType(const QMetaObject *metaObj
QMetaProperty subProp = subObject->property(subIndex);
ValueTypeSerializedData sd;
+ memset(&sd, 0, sizeof(sd));
sd.isValueType = true;
sd.core.load(metaObject->property(index));
sd.valueType.flags = QDeclarativePropertyCache::Data::flagsForProperty(subProp);
@@ -1468,6 +1469,7 @@ QByteArray QDeclarativePropertyPrivate::saveValueType(const QMetaObject *metaObj
QByteArray QDeclarativePropertyPrivate::saveProperty(const QMetaObject *metaObject, int index)
{
SerializedData sd;
+ memset(&sd, 0, sizeof(sd));
sd.isValueType = false;
sd.core.load(metaObject->property(index));
diff --git a/src/declarative/qml/qmetaobjectbuilder.cpp b/src/declarative/qml/qmetaobjectbuilder.cpp
index a63656bc28..d8a7b77f11 100644
--- a/src/declarative/qml/qmetaobjectbuilder.cpp
+++ b/src/declarative/qml/qmetaobjectbuilder.cpp
@@ -1452,6 +1452,7 @@ QMetaObject *QMetaObjectBuilder::toMetaObject() const
{
int size = buildMetaObject(d, 0, false);
char *buf = reinterpret_cast<char *>(qMalloc(size));
+ memset(buf, 0, size);
buildMetaObject(d, buf, false);
return reinterpret_cast<QMetaObject *>(buf);
}
@@ -1481,6 +1482,7 @@ QByteArray QMetaObjectBuilder::toRelocatableData(bool *ok) const
QByteArray data;
data.resize(size);
char *buf = data.data();
+ memset(buf, 0, size);
buildMetaObject(d, buf, true);
if (ok) *ok = true;
return data;