Changed GetDocumentLoadGroup(...) to be XPCom complient. THis helps prevent leaks when using nsCOMPtrs.
git-svn-id: svn://10.0.0.236/trunk@48177 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
5fd55c1f5c
commit
22e6b8be31
@ -1829,11 +1829,12 @@ nsXMLContentSink::ProcessStartSCRIPTTag(const nsIParserNode& aNode)
|
|||||||
NS_ADDREF(this);
|
NS_ADDREF(this);
|
||||||
|
|
||||||
nsIUnicharStreamLoader* loader;
|
nsIUnicharStreamLoader* loader;
|
||||||
|
nsCOMPtr<nsILoadGroup> loadGroup;
|
||||||
|
|
||||||
|
mDocument->GetDocumentLoadGroup(getter_AddRefs(loadGroup));
|
||||||
rv = NS_NewUnicharStreamLoader(&loader,
|
rv = NS_NewUnicharStreamLoader(&loader,
|
||||||
url,
|
url,
|
||||||
#ifdef NECKO
|
loadGroup,
|
||||||
nsCOMPtr<nsILoadGroup>(mDocument->GetDocumentLoadGroup()),
|
|
||||||
#endif
|
|
||||||
(nsStreamCompleteFunc)nsDoneLoadingScript,
|
(nsStreamCompleteFunc)nsDoneLoadingScript,
|
||||||
(void *)this);
|
(void *)this);
|
||||||
NS_RELEASE(url);
|
NS_RELEASE(url);
|
||||||
|
|||||||
@ -538,7 +538,7 @@ public:
|
|||||||
|
|
||||||
virtual nsIPrincipal* GetDocumentPrincipal() const;
|
virtual nsIPrincipal* GetDocumentPrincipal() const;
|
||||||
|
|
||||||
virtual nsILoadGroup* GetDocumentLoadGroup() const;
|
NS_IMETHOD GetDocumentLoadGroup(nsILoadGroup **aGroup) const;
|
||||||
|
|
||||||
NS_IMETHOD GetBaseURL(nsIURI*& aURL) const;
|
NS_IMETHOD GetBaseURL(nsIURI*& aURL) const;
|
||||||
|
|
||||||
@ -1525,13 +1525,12 @@ XULDocumentImpl::GetDocumentPrincipal() const
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
nsILoadGroup*
|
XULDocumentImpl::GetDocumentLoadGroup(nsILoadGroup **aGroup) const
|
||||||
XULDocumentImpl::GetDocumentLoadGroup() const
|
|
||||||
{
|
{
|
||||||
nsILoadGroup* result = mDocumentLoadGroup;
|
*aGroup = mDocumentLoadGroup;
|
||||||
NS_IF_ADDREF(result);
|
NS_IF_ADDREF(*aGroup);
|
||||||
return result;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
|
|||||||
@ -783,7 +783,7 @@ nsPresContext::GetImageGroup(nsIImageGroup** aResult)
|
|||||||
if (NS_SUCCEEDED(mShell->GetDocument(getter_AddRefs(doc)))) {
|
if (NS_SUCCEEDED(mShell->GetDocument(getter_AddRefs(doc)))) {
|
||||||
NS_ASSERTION(doc, "expect document here");
|
NS_ASSERTION(doc, "expect document here");
|
||||||
if (doc) {
|
if (doc) {
|
||||||
loadGroup = doc->GetDocumentLoadGroup();
|
doc->GetDocumentLoadGroup(getter_AddRefs(loadGroup));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
|
|||||||
@ -783,7 +783,7 @@ nsPresContext::GetImageGroup(nsIImageGroup** aResult)
|
|||||||
if (NS_SUCCEEDED(mShell->GetDocument(getter_AddRefs(doc)))) {
|
if (NS_SUCCEEDED(mShell->GetDocument(getter_AddRefs(doc)))) {
|
||||||
NS_ASSERTION(doc, "expect document here");
|
NS_ASSERTION(doc, "expect document here");
|
||||||
if (doc) {
|
if (doc) {
|
||||||
loadGroup = doc->GetDocumentLoadGroup();
|
doc->GetDocumentLoadGroup(getter_AddRefs(loadGroup));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
|
|||||||
@ -1829,11 +1829,12 @@ nsXMLContentSink::ProcessStartSCRIPTTag(const nsIParserNode& aNode)
|
|||||||
NS_ADDREF(this);
|
NS_ADDREF(this);
|
||||||
|
|
||||||
nsIUnicharStreamLoader* loader;
|
nsIUnicharStreamLoader* loader;
|
||||||
|
nsCOMPtr<nsILoadGroup> loadGroup;
|
||||||
|
|
||||||
|
mDocument->GetDocumentLoadGroup(getter_AddRefs(loadGroup));
|
||||||
rv = NS_NewUnicharStreamLoader(&loader,
|
rv = NS_NewUnicharStreamLoader(&loader,
|
||||||
url,
|
url,
|
||||||
#ifdef NECKO
|
loadGroup,
|
||||||
nsCOMPtr<nsILoadGroup>(mDocument->GetDocumentLoadGroup()),
|
|
||||||
#endif
|
|
||||||
(nsStreamCompleteFunc)nsDoneLoadingScript,
|
(nsStreamCompleteFunc)nsDoneLoadingScript,
|
||||||
(void *)this);
|
(void *)this);
|
||||||
NS_RELEASE(url);
|
NS_RELEASE(url);
|
||||||
|
|||||||
@ -538,7 +538,7 @@ public:
|
|||||||
|
|
||||||
virtual nsIPrincipal* GetDocumentPrincipal() const;
|
virtual nsIPrincipal* GetDocumentPrincipal() const;
|
||||||
|
|
||||||
virtual nsILoadGroup* GetDocumentLoadGroup() const;
|
NS_IMETHOD GetDocumentLoadGroup(nsILoadGroup **aGroup) const;
|
||||||
|
|
||||||
NS_IMETHOD GetBaseURL(nsIURI*& aURL) const;
|
NS_IMETHOD GetBaseURL(nsIURI*& aURL) const;
|
||||||
|
|
||||||
@ -1525,13 +1525,12 @@ XULDocumentImpl::GetDocumentPrincipal() const
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
nsILoadGroup*
|
XULDocumentImpl::GetDocumentLoadGroup(nsILoadGroup **aGroup) const
|
||||||
XULDocumentImpl::GetDocumentLoadGroup() const
|
|
||||||
{
|
{
|
||||||
nsILoadGroup* result = mDocumentLoadGroup;
|
*aGroup = mDocumentLoadGroup;
|
||||||
NS_IF_ADDREF(result);
|
NS_IF_ADDREF(*aGroup);
|
||||||
return result;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
|
|||||||
@ -1597,11 +1597,12 @@ XULContentSinkImpl::OpenScript(const nsIParserNode& aNode)
|
|||||||
mCurrentScriptURL = url;
|
mCurrentScriptURL = url;
|
||||||
|
|
||||||
nsIUnicharStreamLoader* loader;
|
nsIUnicharStreamLoader* loader;
|
||||||
|
nsCOMPtr<nsILoadGroup> group;
|
||||||
|
|
||||||
|
mDocument->GetDocumentLoadGroup(getter_AddRefs(group));
|
||||||
rv = NS_NewUnicharStreamLoader(&loader,
|
rv = NS_NewUnicharStreamLoader(&loader,
|
||||||
url,
|
url,
|
||||||
#ifdef NECKO
|
group,
|
||||||
nsCOMPtr<nsILoadGroup>(mDocument->GetDocumentLoadGroup()),
|
|
||||||
#endif
|
|
||||||
(nsStreamCompleteFunc)DoneLoadingScript,
|
(nsStreamCompleteFunc)DoneLoadingScript,
|
||||||
(void *)this);
|
(void *)this);
|
||||||
NS_RELEASE(url);
|
NS_RELEASE(url);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user