From f0699eac567889dc05876dbb416aa981020ea89c Mon Sep 17 00:00:00 2001 From: "joki%netscape.com" Date: Thu, 3 Sep 1998 01:23:12 +0000 Subject: [PATCH] Standardize order during content creation to be setDoc, addAttr, appendChild git-svn-id: svn://10.0.0.236/trunk@9190 18797224-902f-48f8-a5cc-f745e15eee43 --- .../html/document/src/nsHTMLContentSink.cpp | 15 +++++++++++---- .../html/document/src/nsHTMLContentSink.cpp | 15 +++++++++++---- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/mozilla/content/html/document/src/nsHTMLContentSink.cpp b/mozilla/content/html/document/src/nsHTMLContentSink.cpp index 9a79a7e01c6..6f57cdb88ff 100644 --- a/mozilla/content/html/document/src/nsHTMLContentSink.cpp +++ b/mozilla/content/html/document/src/nsHTMLContentSink.cpp @@ -819,6 +819,11 @@ SinkContext::OpenContainer(const nsIParserNode& aNode) mStack[mStackPos].mContent = content; mStack[mStackPos].mFlags = 0; content->SetDocument(mSink->mDocument); + + nsIScriptContextOwner* sco = mSink->mDocument->GetScriptContextOwner(); + rv = AddAttributes(aNode, content, sco); + NS_IF_RELEASE(sco); + if (mPreAppend) { NS_ASSERTION(mStackPos > 0, "container w/o parent"); nsIHTMLContent* parent = mStack[mStackPos-1].mContent; @@ -826,14 +831,10 @@ SinkContext::OpenContainer(const nsIParserNode& aNode) mStack[mStackPos].mFlags |= APPENDED; } mStackPos++; - nsIScriptContextOwner* sco = mSink->mDocument->GetScriptContextOwner(); - rv = AddAttributes(aNode, content, sco); - NS_IF_RELEASE(sco); if (NS_OK != rv) { return rv; } - // Special handling for certain tags switch (nodeType) { case eHTMLTag_a: @@ -925,6 +926,10 @@ SinkContext::AddLeaf(const nsIParserNode& aNode) if (NS_OK != rv) { return rv; } + + // Set the content's document + content->SetDocument(mSink->mDocument); + nsIScriptContextOwner* sco = mSink->mDocument->GetScriptContextOwner(); rv = AddAttributes(aNode, content, sco); NS_IF_RELEASE(sco); @@ -1065,6 +1070,8 @@ SinkContext::FlushText(PRBool* aDidFlush) nsIHTMLContent* content; rv = NS_NewHTMLText(&content, mText, mTextLength); if (NS_OK == rv) { + // Set the content's document + content->SetDocument(mSink->mDocument); // Add text to its parent NS_ASSERTION(mStackPos > 0, "leaf w/o container"); nsIHTMLContent* parent = mStack[mStackPos - 1].mContent; diff --git a/mozilla/layout/html/document/src/nsHTMLContentSink.cpp b/mozilla/layout/html/document/src/nsHTMLContentSink.cpp index 9a79a7e01c6..6f57cdb88ff 100644 --- a/mozilla/layout/html/document/src/nsHTMLContentSink.cpp +++ b/mozilla/layout/html/document/src/nsHTMLContentSink.cpp @@ -819,6 +819,11 @@ SinkContext::OpenContainer(const nsIParserNode& aNode) mStack[mStackPos].mContent = content; mStack[mStackPos].mFlags = 0; content->SetDocument(mSink->mDocument); + + nsIScriptContextOwner* sco = mSink->mDocument->GetScriptContextOwner(); + rv = AddAttributes(aNode, content, sco); + NS_IF_RELEASE(sco); + if (mPreAppend) { NS_ASSERTION(mStackPos > 0, "container w/o parent"); nsIHTMLContent* parent = mStack[mStackPos-1].mContent; @@ -826,14 +831,10 @@ SinkContext::OpenContainer(const nsIParserNode& aNode) mStack[mStackPos].mFlags |= APPENDED; } mStackPos++; - nsIScriptContextOwner* sco = mSink->mDocument->GetScriptContextOwner(); - rv = AddAttributes(aNode, content, sco); - NS_IF_RELEASE(sco); if (NS_OK != rv) { return rv; } - // Special handling for certain tags switch (nodeType) { case eHTMLTag_a: @@ -925,6 +926,10 @@ SinkContext::AddLeaf(const nsIParserNode& aNode) if (NS_OK != rv) { return rv; } + + // Set the content's document + content->SetDocument(mSink->mDocument); + nsIScriptContextOwner* sco = mSink->mDocument->GetScriptContextOwner(); rv = AddAttributes(aNode, content, sco); NS_IF_RELEASE(sco); @@ -1065,6 +1070,8 @@ SinkContext::FlushText(PRBool* aDidFlush) nsIHTMLContent* content; rv = NS_NewHTMLText(&content, mText, mTextLength); if (NS_OK == rv) { + // Set the content's document + content->SetDocument(mSink->mDocument); // Add text to its parent NS_ASSERTION(mStackPos > 0, "leaf w/o container"); nsIHTMLContent* parent = mStack[mStackPos - 1].mContent;