mOwnsFrameLoader = PR_TRUE;
nsSubDocumentFrame::GetDocShell(nsIDocShell **aDocShell){  *aDocShell = nsnull;  nsIContent* content = GetContent();  if (!content) {    // Hmm, no content in this frame    // that's odd, not much to be done here then.    return NS_OK;  }  if (!mFrameLoader) {    nsCOMPtr<nsIFrameLoaderOwner> loaderOwner = do_QueryInterface(content);    if (loaderOwner) {      loaderOwner->GetFrameLoader(getter_AddRefs(mFrameLoader));    }    if (!mFrameLoader) {      // No frame loader available from the content, create our own...      mFrameLoader = new nsFrameLoader(content);      if (!mFrameLoader)        return NS_ERROR_OUT_OF_MEMORY;      // ... and tell it to start loading.      nsresult rv = mFrameLoader->LoadFrame();      NS_ENSURE_SUCCESS(rv, rv);    }  }  return mFrameLoader->GetDocShell(aDocShell);}