Fix memory leak: use nsCOMPtr for frame selection everywhere

This commit is contained in:
akkana%netscape.com 1999-02-04 01:00:34 +00:00
Родитель 9fa2f8e3ab
Коммит 7ce99a3b55
1 изменённых файлов: 12 добавлений и 12 удалений

Просмотреть файл

@ -723,9 +723,9 @@ getDOMSelection(nsIPresShell* presShell)
nsCOMPtr<nsIDOMSelection> selection; // will be the return value nsCOMPtr<nsIDOMSelection> selection; // will be the return value
nsresult result; nsresult result;
nsISelection* frameSelection; nsCOMPtr<nsISelection> frameSelection;
result = presShell->GetSelection(&frameSelection); result = presShell->GetSelection(getter_AddRefs(frameSelection));
if ((!NS_SUCCEEDED(result)) || (nsnull == frameSelection)) if ((!NS_SUCCEEDED(result)) || !frameSelection)
return selection; return selection;
frameSelection->QueryInterface(kIDOMSelectionIID, frameSelection->QueryInterface(kIDOMSelectionIID,
@ -759,9 +759,9 @@ nsresult nsEditor::CreateTxnForInsertText(const nsString & aStringToInsert,
InsertTextTxn ** aTxn) InsertTextTxn ** aTxn)
{ {
nsresult result; nsresult result;
nsISelection* selection; nsCOMPtr<nsISelection> selection;
result = mPresShell->GetSelection(&selection); result = mPresShell->GetSelection(getter_AddRefs(selection));
if ((NS_SUCCEEDED(result)) && (nsnull!=selection)) if ((NS_SUCCEEDED(result)) && selection)
{ {
nsCOMPtr<nsIEnumerator> enumerator; nsCOMPtr<nsIEnumerator> enumerator;
enumerator = selection; enumerator = selection;
@ -857,9 +857,9 @@ nsresult nsEditor::CreateTxnToHandleEnterKey(EditAggregateTxn **aTxn)
{ {
return result; return result;
} }
nsISelection* selection; nsCOMPtr<nsISelection> selection;
result = mPresShell->GetSelection(&selection); result = mPresShell->GetSelection(getter_AddRefs(selection));
if ((NS_SUCCEEDED(result)) && (nsnull!=selection)) if ((NS_SUCCEEDED(result)) && selection)
{ {
nsCOMPtr<nsIEnumerator> enumerator; nsCOMPtr<nsIEnumerator> enumerator;
enumerator = selection; enumerator = selection;
@ -947,9 +947,9 @@ nsresult nsEditor::CreateTxnForDeleteSelection(nsIEditor::Direction aDir,
{ {
return result; return result;
} }
nsISelection* selection; nsCOMPtr<nsISelection> selection;
result = mPresShell->GetSelection(&selection); result = mPresShell->GetSelection(getter_AddRefs(selection));
if ((NS_SUCCEEDED(result)) && (nsnull!=selection)) if ((NS_SUCCEEDED(result)) && selection)
{ {
nsCOMPtr<nsIEnumerator> enumerator; nsCOMPtr<nsIEnumerator> enumerator;
enumerator = selection; enumerator = selection;