Fix for bug 36362. We no longer null out the ref count of form elements in their Release() methods before deleting them. This fixes the crashes on www.cnn.com and www.msn.com.

This commit is contained in:
nisheeth%netscape.com 2000-04-21 01:03:20 +00:00
Родитель 8007074ccd
Коммит 793252e617
12 изменённых файлов: 12 добавлений и 24 удалений

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

@ -169,8 +169,7 @@ nsHTMLButtonElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLButtonElement");
delete this;
return 0;

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

@ -128,8 +128,7 @@ nsHTMLFieldSetElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLFieldSetElement");
delete this;
return 0;

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

@ -251,8 +251,7 @@ nsHTMLInputElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLInputElement");
delete this;
return 0;

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

@ -176,8 +176,7 @@ nsHTMLLabelElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLLabelElement");
delete this;
return 0;

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

@ -308,8 +308,7 @@ nsHTMLSelectElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLSelectElement");
delete this;
return 0;

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

@ -199,8 +199,7 @@ nsHTMLTextAreaElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLTextAreaElement");
delete this;
return 0;

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

@ -169,8 +169,7 @@ nsHTMLButtonElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLButtonElement");
delete this;
return 0;

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

@ -128,8 +128,7 @@ nsHTMLFieldSetElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLFieldSetElement");
delete this;
return 0;

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

@ -251,8 +251,7 @@ nsHTMLInputElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLInputElement");
delete this;
return 0;

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

@ -176,8 +176,7 @@ nsHTMLLabelElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLLabelElement");
delete this;
return 0;

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

@ -308,8 +308,7 @@ nsHTMLSelectElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLSelectElement");
delete this;
return 0;

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

@ -199,8 +199,7 @@ nsHTMLTextAreaElement::Release()
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
} else if ((1 == mRefCnt) && mForm) {
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLTextAreaElement");
delete this;
return 0;