summaryrefslogtreecommitdiffstats
path: root/src/gui/graphicsview/qgraphicsanchorlayout.cpp
diff options
context:
space:
mode:
authorEduardo M. Fleury <eduardo.fleury@openbossa.org>2009-05-28 20:27:44 (GMT)
committerEduardo M. Fleury <eduardo.fleury@openbossa.org>2009-07-22 18:04:09 (GMT)
commit4cb58c203242e6e24d1628673b145a038c93531f (patch)
tree356ef151ce3dd6b61013c9afb6723a7adb86ac89 /src/gui/graphicsview/qgraphicsanchorlayout.cpp
parent12913735db966558ac255780aaee0ec0d1096a8c (diff)
downloadQt-4cb58c203242e6e24d1628673b145a038c93531f.zip
Qt-4cb58c203242e6e24d1628673b145a038c93531f.tar.gz
Qt-4cb58c203242e6e24d1628673b145a038c93531f.tar.bz2
QGraphicsAnchorLayout: Temporary destructor to avoid memory leaks
Currently the itemCenterConstraints that are created when an item is added to the layout are never being deleted. Ideally this should be done by the time the item is removed from the layout, this requires some changes in the data structures used though. As a temporary solution we keep all of them until the layout is destroyed. Signed-off-by: Eduardo M. Fleury <eduardo.fleury@openbossa.org>
Diffstat (limited to 'src/gui/graphicsview/qgraphicsanchorlayout.cpp')
-rw-r--r--src/gui/graphicsview/qgraphicsanchorlayout.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gui/graphicsview/qgraphicsanchorlayout.cpp b/src/gui/graphicsview/qgraphicsanchorlayout.cpp
index b3dcdd0..260c823 100644
--- a/src/gui/graphicsview/qgraphicsanchorlayout.cpp
+++ b/src/gui/graphicsview/qgraphicsanchorlayout.cpp
@@ -62,6 +62,18 @@ QGraphicsAnchorLayout::~QGraphicsAnchorLayout()
}
d->deleteLayoutEdges();
+
+ // ### make something better here
+ qDeleteAll(d->itemCenterConstraints[0]);
+ d->itemCenterConstraints[0].clear();
+ qDeleteAll(d->itemCenterConstraints[1]);
+ d->itemCenterConstraints[1].clear();
+
+ Q_ASSERT(d->items.isEmpty());
+ Q_ASSERT(d->m_vertexList.isEmpty());
+
+ // ### Remove when integrated into Qt
+ delete d_ptr;
}
void QGraphicsAnchorLayout::anchor(QGraphicsLayoutItem *firstItem,