Show certificate error pages (instead of dialogs) in frames. b=423247, p=kengert, r=rrelyea, r=bzbarsky, a=blocking-1.9 (ted)

This commit is contained in:
johnath@mozilla.com 2008-03-17 11:13:37 -07:00
Родитель 8e01900f9f
Коммит 5e595d1fea
1 изменённых файлов: 19 добавлений и 1 удалений

Просмотреть файл

@ -79,6 +79,7 @@
#include "nsNSSCleaner.h"
#include "nsThreadUtils.h"
#include "nsIDocShell.h"
#include "nsIDocShellTreeItem.h"
#include "nsISecureBrowserUI.h"
#include "nsProxyRelease.h"
#include "nsIClassInfoImpl.h"
@ -336,7 +337,24 @@ nsNSSSocketInfo::SetNotificationCallbacks(nsIInterfaceRequestor* aCallbacks)
// with a socket close, and the socket transport might detach the callbacks
// instance prior to our error reporting.
nsCOMPtr<nsIDocShell> docshell(do_GetInterface(mCallbacks));
nsCOMPtr<nsIDocShell> docshell;
nsCOMPtr<nsIDocShellTreeItem> item(do_GetInterface(mCallbacks));
if (item)
{
nsCOMPtr<nsIDocShellTreeItem> proxiedItem;
nsCOMPtr<nsIDocShellTreeItem> rootItem;
NS_GetProxyForObject(NS_PROXY_TO_MAIN_THREAD,
NS_GET_IID(nsIDocShellTreeItem),
item.get(),
NS_PROXY_SYNC,
getter_AddRefs(proxiedItem));
proxiedItem->GetSameTypeRootTreeItem(getter_AddRefs(rootItem));
docshell = do_QueryInterface(rootItem);
NS_ASSERTION(docshell, "rootItem do_QI is null");
}
if (docshell)
{
nsCOMPtr<nsIDocShell> proxiedDocShell;