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
This commit is contained in:
joki%netscape.com
1998-09-03 01:23:12 +00:00
parent 6fe10b9054
commit f0699eac56
2 changed files with 22 additions and 8 deletions

View File

@@ -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;