diff options
author | Renato Araujo Oliveira Filho <renato.filho@canonical.com> | 2014-02-04 15:27:34 -0300 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-02-05 05:32:19 +0100 |
commit | cdbe3d4a34f728caaac15eccc9fdca3195b60b3a (patch) | |
tree | a40fd847b746d2b856104c409883b974fd01d1c6 | |
parent | e0c5eebe350ecf0505a18aa2e49ac0331d23045d (diff) |
Set the contact detail parent to avoid memory leak.
Change-Id: I4eed6039c398d537254441e4e5873838a7866c6c
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Gustavo Pichorim Boiko <gustavo.boiko@canonical.com>
Reviewed-by: Michael Krasnyk <michael.krasnyk@gmail.com>
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
-rw-r--r-- | src/imports/contacts/qdeclarativecontact.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/imports/contacts/qdeclarativecontact.cpp b/src/imports/contacts/qdeclarativecontact.cpp index f4c99e7ad..e64c6e531 100644 --- a/src/imports/contacts/qdeclarativecontact.cpp +++ b/src/imports/contacts/qdeclarativecontact.cpp @@ -133,6 +133,7 @@ void QDeclarativeContact::setContact(const QContact& contact) QList<QContactDetail> details(contact.details()); foreach (const QContactDetail &detail, details) { QDeclarativeContactDetail *contactDetail = QDeclarativeContactDetailFactory::createContactDetail(static_cast<QDeclarativeContactDetail::DetailType>(detail.type())); + contactDetail->setParent(this); contactDetail->setDetail(detail); connect(contactDetail, SIGNAL(detailChanged()), this, SIGNAL(contactChanged())); m_details.append(contactDetail); @@ -254,6 +255,7 @@ bool QDeclarativeContact::addDetail(QDeclarativeContactDetail* detail) return false; QDeclarativeContactDetail *contactDetail = QDeclarativeContactDetailFactory::createContactDetail(detail->detailType()); + contactDetail->setParent(this); contactDetail->setDetail(detail->detail()); connect(contactDetail, SIGNAL(detailChanged()), this, SIGNAL(contactChanged())); m_details.append(contactDetail); |