|
Hi, In my component i had a method like GetWindowForNode(nsIDOMNode *node , nsIDOMWindow **window) NS_IMETHODIMP nsRecorderImpl::GetWindowForNode(nsIDOMNode *node,nsIDOMWindow **window) { nsresult rv; nsCOMPtr<nsIDOMDocument> ownerDoc; rv = node->GetOwnerDocument(getter_AddRefs(ownerDoc)); if(NS_SUCCEEDED(rv) && ownerDoc) { nsCOMPtr<nsIDOMDocumentView> docView(do_QueryInterface(ownerDoc,&rv)); if(!(NS_SUCCEEDED(rv)) || !docView) return NS_ERROR_FAILURE; nsCOMPtr<nsIDOMAbstractView> view; rv = docView->GetDefaultView(getter_AddRefs(view)); if(!(NS_SUCCEEDED(rv)) || !view) return NS_ERROR_FAILURE; nsCOMPtr<nsIDOMWindowInternal> internal= do_QueryInterface(view,&rv); if(!(NS_SUCCEEDED(rv)) || !internal) return NS_ERROR_FAILURE; nsCOMPtr<nsIDOMWindow> domWindow(do_QueryInterface(internal,&rv)); if(NS_SUCCEEDED(rv) && domWindow) { *window=domWindow; } else { return NS_ERROR_FAILURE; } } return NS_OK; } I invoked this method as said below nsCOMPtr<nsIDOMWindow> window; rv = GetWindowForNode(node,getter_Addrefs(window)); while invoking the method as said above i am getting memory issue. While the same method is called as nsIDOMWindow *window; rv = GetWindowForNode(node,&window); There is no memory issue. My query is whether it is appropriate to us nsCOMPtr here ? If it is wrong please guide me where to use nsCOMPtr. Please help me in this regard. Thanks & Regards S.Srinivasa Raghavan --
|
- Re: memory leakage issue (problem in my component) Srinivasa Raghavan
- Re: memory leakage issue (problem in my component... Christian Biesinger
