mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-16 22:04:36 +00:00
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:
parent
8007074ccd
commit
793252e617
@ -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;
|
||||
|
Loading…
x
Reference in New Issue
Block a user