Loading content/xul/document/src/nsXULDocument.cpp +17 −12 Original line number Diff line number Diff line Loading @@ -953,7 +953,9 @@ nsXULDocument::AttributeChanged(nsIDocument* aDocument, nsAutoString value; PRBool attrSet = aElement->GetAttr(kNameSpaceID_None, aAttribute, value); for (PRInt32 i = entry->mListeners.Count() - 1; i >= 0; --i) { nsCOMArray<nsIContent> listenerArray; PRInt32 i; for (i = entry->mListeners.Count() - 1; i >= 0; --i) { BroadcastListener* bl = NS_STATIC_CAST(BroadcastListener*, entry->mListeners[i]); Loading @@ -961,7 +963,12 @@ nsXULDocument::AttributeChanged(nsIDocument* aDocument, (bl->mAttribute == nsGkAtoms::_asterix)) { nsCOMPtr<nsIContent> listener = do_QueryInterface(bl->mListener); listenerArray.AppendObject(listener); } } for (i = 0; i < listenerArray.Count(); ++i) { nsIContent* listener = listenerArray[i]; if (attrSet) { listener->SetAttr(kNameSpaceID_None, aAttribute, value, PR_TRUE); Loading @@ -970,10 +977,8 @@ nsXULDocument::AttributeChanged(nsIDocument* aDocument, listener->UnsetAttr(kNameSpaceID_None, aAttribute, PR_TRUE); } ExecuteOnBroadcastHandlerFor(aElement, bl->mListener, aAttribute); } nsCOMPtr<nsIDOMElement> listenerEl = do_QueryInterface(listener); ExecuteOnBroadcastHandlerFor(aElement, listenerEl, aAttribute); } } } Loading Loading
content/xul/document/src/nsXULDocument.cpp +17 −12 Original line number Diff line number Diff line Loading @@ -953,7 +953,9 @@ nsXULDocument::AttributeChanged(nsIDocument* aDocument, nsAutoString value; PRBool attrSet = aElement->GetAttr(kNameSpaceID_None, aAttribute, value); for (PRInt32 i = entry->mListeners.Count() - 1; i >= 0; --i) { nsCOMArray<nsIContent> listenerArray; PRInt32 i; for (i = entry->mListeners.Count() - 1; i >= 0; --i) { BroadcastListener* bl = NS_STATIC_CAST(BroadcastListener*, entry->mListeners[i]); Loading @@ -961,7 +963,12 @@ nsXULDocument::AttributeChanged(nsIDocument* aDocument, (bl->mAttribute == nsGkAtoms::_asterix)) { nsCOMPtr<nsIContent> listener = do_QueryInterface(bl->mListener); listenerArray.AppendObject(listener); } } for (i = 0; i < listenerArray.Count(); ++i) { nsIContent* listener = listenerArray[i]; if (attrSet) { listener->SetAttr(kNameSpaceID_None, aAttribute, value, PR_TRUE); Loading @@ -970,10 +977,8 @@ nsXULDocument::AttributeChanged(nsIDocument* aDocument, listener->UnsetAttr(kNameSpaceID_None, aAttribute, PR_TRUE); } ExecuteOnBroadcastHandlerFor(aElement, bl->mListener, aAttribute); } nsCOMPtr<nsIDOMElement> listenerEl = do_QueryInterface(listener); ExecuteOnBroadcastHandlerFor(aElement, listenerEl, aAttribute); } } } Loading