nsCOMPtr<nsIDocumentLoader> kungFuDeathGrip(this);
void nsDocLoaderImpl::DocLoaderIsEmpty(nsresult aStatus){  if (mIsLoadingDocument) {    PRBool busy = PR_FALSE;    IsBusy(busy);    if (!busy) {      PR_LOG(gDocLoaderLog, PR_LOG_DEBUG,              ("DocLoader:%p: Is now idle...\n", this));      nsCOMPtr<nsIChannel> docChannel(mDocumentChannel);      mDocumentChannel = null_nsCOMPtr();      mIsLoadingDocument = PR_FALSE;      //      // Do nothing after firing the OnEndDocumentLoad(...). The document      // loader may be loading a *new* document - if LoadDocument()      // was called from a handler!      //      FireOnEndDocumentLoad(this, docChannel, aStatus);      if (mParent) {        mParent->DocLoaderIsEmpty(aStatus);      }    }  }}