Tell the cycle collector about nsScriptLoadRequest::mElement.

Not doing this can cause a leak because there is a cycle between the load request and the script element.
This commit is contained in:
wolfbeast 2018-11-15 13:32:25 +01:00 committed by Roy Tam
commit b32338ed19

View file

@ -81,11 +81,19 @@ ImplCycleCollectionTraverse(nsCycleCollectionTraversalCallback& aCallback,
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsScriptLoadRequest)
NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTION_0(nsScriptLoadRequest)
NS_IMPL_CYCLE_COLLECTING_ADDREF(nsScriptLoadRequest)
NS_IMPL_CYCLE_COLLECTING_RELEASE(nsScriptLoadRequest)
NS_IMPL_CYCLE_COLLECTION_CLASS(nsScriptLoadRequest)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsScriptLoadRequest)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mElement)
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsScriptLoadRequest)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mElement)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
nsScriptLoadRequest::~nsScriptLoadRequest()
{
js_free(mScriptTextBuf);