Index: mozilla/content/html/document/src/nsHTMLContentSink.cpp
===================================================================
RCS file: /cvsroot/mozilla/content/html/document/src/nsHTMLContentSink.cpp,v
retrieving revision 3.457
diff -u -4 -r3.457 nsHTMLContentSink.cpp
--- nsHTMLContentSink.cpp 2001/05/30 20:35:20 3.457
+++ nsHTMLContentSink.cpp 2001/06/05 14:40:28
@@ -3784,9 +3784,9 @@
element->SetDocument(mDocument, PR_FALSE, PR_TRUE);
result = AddAttributes(aNode, element);
if (NS_SUCCEEDED(result)) {
parent->AppendChildTo(element, PR_FALSE, PR_FALSE);
- if(!mInsideNoXXXTag) {
+ if (!mInsideNoXXXTag) {
nsAutoString value;
if (NS_CONTENT_ATTR_HAS_VALUE == element->GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::href, value)) {
ProcessBaseHref(value);
}
@@ -4056,13 +4056,13 @@
{
nsresult result = NS_OK;
nsIHTMLContent* parent = nsnull;
- if(mCurrentContext!=nsnull) {
- parent=mCurrentContext->mStack[mCurrentContext->mStackPos-1].mContent;
+ if (mCurrentContext) {
+ parent = mCurrentContext->mStack[mCurrentContext->mStackPos - 1].mContent;
}
- if(parent!=nsnull) {
+ if (parent) {
// Create content object
nsCOMPtr element;
nsCOMPtr nodeInfo;
mNodeInfoManager->GetNodeInfo(nsHTMLAtoms::link, nsnull, kNameSpaceID_HTML,
@@ -4077,15 +4077,15 @@
nsCOMPtr ssle(do_QueryInterface(element));
if (ssle) {
// XXX need prefs. check here.
- if(!mInsideNoXXXTag) {
+ if (!mInsideNoXXXTag && !mBody) {
ssle->InitStyleLinkElement(mParser, PR_FALSE);
+ ssle->SetEnableUpdates(PR_FALSE);
}
else {
- ssle->InitStyleLinkElement(mParser, PR_TRUE);
+ ssle->InitStyleLinkElement(nsnull, PR_TRUE);
}
- ssle->SetEnableUpdates(PR_FALSE);
}
// Add in the attributes and add the style content object to the
// head container.
@@ -4094,8 +4094,9 @@
if (NS_FAILED(result)) {
return result;
}
parent->AppendChildTo(element, PR_FALSE, PR_FALSE);
+
if (ssle) {
ssle->SetEnableUpdates(PR_TRUE);
result = ssle->UpdateStyleSheet(PR_TRUE, mDocument, mStyleSheetCount);
if (NS_SUCCEEDED(result) || (result == NS_ERROR_HTMLPARSER_BLOCK))
@@ -4669,13 +4670,13 @@
if (ssle) {
// XXX need prefs. check here.
if (!mInsideNoXXXTag) {
ssle->InitStyleLinkElement(mParser, PR_FALSE);
+ ssle->SetEnableUpdates(PR_FALSE);
}
else {
- ssle->InitStyleLinkElement(mParser, PR_TRUE);
+ ssle->InitStyleLinkElement(nsnull, PR_TRUE);
}
- ssle->SetEnableUpdates(PR_FALSE);
}
// Add in the attributes and add the style content object to the
// head container.