Back out fix for bug 428229 (Unable to override addEventListener).

This commit is contained in:
Peter Van der Beken
2009-11-15 17:03:03 +01:00
parent b4563225fa
commit d24c94e22e
10 changed files with 179 additions and 93 deletions

View File

@@ -1646,7 +1646,9 @@ nsDOMEventRTTearoff::AddEventListener(const nsAString& aType,
nsIDOMEventListener *aListener,
PRBool useCapture)
{
return AddEventListener(aType, aListener, useCapture, PR_FALSE, 0);
return
AddEventListener(aType, aListener, useCapture,
!nsContentUtils::IsChromeDoc(mNode->GetOwnerDoc()));
}
NS_IMETHODIMP
@@ -1712,23 +1714,15 @@ NS_IMETHODIMP
nsDOMEventRTTearoff::AddEventListener(const nsAString& aType,
nsIDOMEventListener *aListener,
PRBool aUseCapture,
PRBool aWantsUntrusted,
PRUint8 optional_argc)
PRBool aWantsUntrusted)
{
NS_ASSERTION(!aWantsUntrusted || optional_argc > 0,
"Won't check if this is chrome, you want to set "
"aWantsUntrusted to PR_FALSE or make the aWantsUntrusted "
"explicit by making optional_argc non-zero.");
nsIEventListenerManager* listener_manager =
mNode->GetListenerManager(PR_TRUE);
NS_ENSURE_STATE(listener_manager);
PRInt32 flags = aUseCapture ? NS_EVENT_FLAG_CAPTURE : NS_EVENT_FLAG_BUBBLE;
if (aWantsUntrusted ||
(optional_argc == 0 &&
!nsContentUtils::IsChromeDoc(mNode->GetOwnerDoc()))) {
if (aWantsUntrusted) {
flags |= NS_PRIV_EVENT_UNTRUSTED_PERMITTED;
}