Bug 393294, DOM event leaks (patch 2), r+sr+a=jst

This commit is contained in:
Olli.Pettay@helsinki.fi 2007-08-23 14:38:55 -07:00
parent e6c30127b0
commit 1777dd6f97
3 changed files with 14 additions and 0 deletions

View File

@ -59,6 +59,11 @@ nsDOMBeforeUnloadEvent::nsDOMBeforeUnloadEvent(nsPresContext* aPresContext,
nsDOMBeforeUnloadEvent::~nsDOMBeforeUnloadEvent()
{
if (mEventIsInternal &&
mEvent->eventStructType == NS_BEFORE_PAGE_UNLOAD_EVENT) {
delete static_cast<nsBeforePageUnloadEvent*>(mEvent);
mEvent = nsnull;
}
}
NS_IMPL_ADDREF_INHERITED(nsDOMBeforeUnloadEvent, nsDOMEvent)

View File

@ -51,6 +51,14 @@ nsDOMCommandEvent::nsDOMCommandEvent(nsPresContext* aPresContext,
}
}
nsDOMCommandEvent::~nsDOMCommandEvent()
{
if (mEventIsInternal && mEvent->eventStructType == NS_COMMAND_EVENT) {
delete static_cast<nsCommandEvent*>(mEvent);
mEvent = nsnull;
}
}
NS_INTERFACE_MAP_BEGIN(nsDOMCommandEvent)
NS_INTERFACE_MAP_ENTRY(nsIDOMCommandEvent)
NS_INTERFACE_MAP_ENTRY_CONTENT_CLASSINFO(CommandEvent)

View File

@ -47,6 +47,7 @@ class nsDOMCommandEvent : public nsDOMEvent,
public:
nsDOMCommandEvent(nsPresContext* aPresContext,
nsCommandEvent* aEvent);
virtual ~nsDOMCommandEvent();
NS_DECL_ISUPPORTS_INHERITED