Dispose the v8object handle in QQmlData::destroy()
authorChris Adams <christopher.adams@nokia.com>
Fri, 11 May 2012 01:28:24 +0000 (11:28 +1000)
committerQt by Nokia <qt-info@nokia.com>
Fri, 11 May 2012 22:06:33 +0000 (00:06 +0200)
commit753d9f4be5960be8b11ad067b29fc87c168ee663
tree32167a43838da364be79f9d9b039e586dec77ff7
parent5570040771ec610583473e2d9e8e069474364cf1
Dispose the v8object handle in QQmlData::destroy()

Previously, the handle was simply cleared, which meant that the data
referenced by the handle would only be destroyed during the next
garbage collection cycle.  That had the unwanted side effect that
v8's gc heuristics would assume that the old pointer space needed
expansion more regularly than is required in truth, which has the
further effect of slowing down mark-sweep-compact cycles considerably.

Change-Id: I41595a4d79a75866f434c371139e5493e757d6ab
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
src/qml/qml/qqmlengine.cpp