Standardize order during content creation to be setDoc, addAttr, appendChild

This commit is contained in:
joki%netscape.com 1998-09-03 01:23:12 +00:00
parent ccccef4d80
commit 3d77bc69e3
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;

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;