Make nsContentSink, instead of subclasses, be responsible for making sure RemoveObserver is called (bug 420835). r+sr=sicking, a=blocking1.9+.

git-svn-id: svn://10.0.0.236/trunk@247070 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
jruderman%hmc.edu
2008-03-05 04:54:21 +00:00
parent 4b10805fa0
commit ff28d9eca0
3 changed files with 24 additions and 24 deletions

View File

@@ -1570,11 +1570,6 @@ HTMLContentSink::~HTMLContentSink()
NS_IF_RELEASE(mBody);
NS_IF_RELEASE(mRoot);
if (mDocument) {
// Remove ourselves just to be safe, though we really should have
// been removed in DidBuildModel if everything worked right.
mDocument->RemoveObserver(this);
}
NS_IF_RELEASE(mHTMLDocument);
if (mNotificationTimer) {
@@ -1615,22 +1610,16 @@ HTMLContentSink::~HTMLContentSink()
}
#if DEBUG
NS_IMPL_ISUPPORTS_INHERITED6(HTMLContentSink,
NS_IMPL_ISUPPORTS_INHERITED3(HTMLContentSink,
nsContentSink,
nsIContentSink,
nsIHTMLContentSink,
nsITimerCallback,
nsIDocumentObserver,
nsIMutationObserver,
nsIDebugDumpContent)
#else
NS_IMPL_ISUPPORTS_INHERITED5(HTMLContentSink,
NS_IMPL_ISUPPORTS_INHERITED2(HTMLContentSink,
nsContentSink,
nsIContentSink,
nsIHTMLContentSink,
nsITimerCallback,
nsIDocumentObserver,
nsIMutationObserver)
nsIHTMLContentSink)
#endif
static PRBool