NS_PRECONDITION((0 == mChildGroupList.Count()), "Document loader has children...");
PR_LOG(gDocLoaderLog, PR_LOG_DEBUG, ("DocLoader:%p: deleted.\n", this));  PRUint32 count=0; mChildList->Count(&count);   if (count > 0) { for (PRUint32 i=0; i<count; i++) { nsCOMPtr<nsIDocumentLoader> loader; loader = getter_AddRefs(NS_STATIC_CAST(nsIDocumentLoader*, mChildList->ElementAt(i)));  if (loader) loader->ClearParentDocLoader(); } mChildList->Clear(); }
nsDocLoaderImpl::~nsDocLoaderImpl(){    Stop();    if (nsnull != mParent) {#ifdef NECKO        mParent->RemoveChildGroup(GetLoadGroup());#else        mParent->RemoveChildGroup(this);#endif        NS_RELEASE(mParent);    }#ifdef NECKO    NS_IF_RELEASE(mDocumentChannel);#else    NS_IF_RELEASE(mDocumentUrl);#endif    PR_LOG(gDocLoaderLog, PR_LOG_DEBUG,            ("DocLoader:%p: deleted.\n", this));    NS_PRECONDITION((0 == mChildGroupList.Count()), "Document loader has children...");}