Don't reenter frame construction from anonymous content creation. Bug 334430,

r+sr=sicking
This commit is contained in:
bzbarsky%mit.edu 2006-04-19 15:07:19 +00:00
parent f5089d848b
commit fbcb90fe19

View File

@ -440,6 +440,7 @@ nsXBLPrototypeBinding::InstallImplementation(nsIContent* aBoundElement)
return NS_OK;
}
// XXXbz this duplicates lots of SetAttrs
void
nsXBLPrototypeBinding::AttributeChanged(nsIAtom* aAttribute,
PRInt32 aNameSpaceID,
@ -837,6 +838,7 @@ struct nsXBLAttrChangeData
:mProto(aProto), mBoundElement(aElt), mContent(aContent) {};
};
// XXXbz this duplicates lots of AttributeChanged
PRBool PR_CALLBACK SetAttrs(nsHashKey* aKey, void* aData, void* aClosure)
{
nsXBLAttributeEntry* entry = NS_STATIC_CAST(nsXBLAttributeEntry*, aData);
@ -890,8 +892,8 @@ PRBool PR_CALLBACK SetAttrs(nsHashKey* aKey, void* aData, void* aClosure)
continue;
}
textContent->SetText(value, PR_TRUE);
realElement->AppendChildTo(textContent, PR_TRUE);
textContent->SetText(value, PR_FALSE);
realElement->AppendChildTo(textContent, PR_FALSE);
}
}