Make PL_InitEvent callers stop doing potentially dangerous casting of function pointers. b=305278 r=dougt sr=darin

git-svn-id: svn://10.0.0.236/trunk@184589 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
dbaron%dbaron.org
2005-11-14 20:09:51 +00:00
parent ad69dfbd5c
commit ea56e835a3
25 changed files with 174 additions and 125 deletions

View File

@@ -354,14 +354,17 @@ struct OnLinkClickEvent : public PLEvent {
PopupControlState mPopupState;
};
static void PR_CALLBACK HandlePLEvent(OnLinkClickEvent* aEvent)
static void* PR_CALLBACK HandlePLEvent(PLEvent* aEvent)
{
aEvent->HandleEvent();
OnLinkClickEvent* event = NS_STATIC_CAST(OnLinkClickEvent*, aEvent);
event->HandleEvent();
return nsnull;
}
static void PR_CALLBACK DestroyPLEvent(OnLinkClickEvent* aEvent)
static void PR_CALLBACK DestroyPLEvent(PLEvent* aEvent)
{
delete aEvent;
OnLinkClickEvent* event = NS_STATIC_CAST(OnLinkClickEvent*, aEvent);
delete event;
}
OnLinkClickEvent::OnLinkClickEvent(nsWebShell* aHandler,
@@ -385,9 +388,7 @@ OnLinkClickEvent::OnLinkClickEvent(nsWebShell* aHandler,
mPopupState = window->GetPopupControlState();
PL_InitEvent(this, nsnull,
(PLHandleEventProc) ::HandlePLEvent,
(PLDestroyEventProc) ::DestroyPLEvent);
PL_InitEvent(this, nsnull, ::HandlePLEvent, ::DestroyPLEvent);
nsCOMPtr<nsIEventQueue> eventQueue;
aHandler->GetEventQueue(getter_AddRefs(eventQueue));