OpenURL();
nsCOMPtr<nsIEventQueue> eventQ; nsresult rv = NS_GetCurrentEventQ(getter_AddRefs(eventQ)); if (NS_FAILED(rv)) return rv;  PLEvent *event = new PLEvent; if (event) { NS_ADDREF_THIS(); PL_InitEvent(event, this, handleExtProtoEvent, destroyExtProtoEvent);  rv = eventQ->PostEvent(event); if (NS_FAILED(rv)) PL_DestroyEvent(event); }
NS_IMETHODIMP nsExtProtocolChannel::AsyncOpen(nsIStreamListener *listener, nsISupports *ctxt){  OpenURL();  return NS_ERROR_NO_CONTENT; // force caller to abort.}