fixing crashing popups on Windows. Smoketest blocker. Simple null check, nsPIDOMWindow QI result wasn't checked. Not sure why this fails suddenly, I would think everyone shoudl be implementing nsPIDOMWindow.... r=pinkerton

This commit is contained in:
saari%netscape.com 2000-07-07 22:17:00 +00:00
parent 87373a21f6
commit c6087db637
2 changed files with 8 additions and 6 deletions

View File

@ -2318,9 +2318,10 @@ nsEventStateManager::SendFocusBlur(nsIPresContext* aPresContext, nsIContent *aCo
mDocument->GetScriptGlobalObject(getter_AddRefs(newGlobal));
nsCOMPtr<nsPIDOMWindow> newWindow = do_QueryInterface(newGlobal);
nsCOMPtr<nsPIDOMWindow> oldWindow = do_QueryInterface(oldGlobal);
newWindow->GetRootCommandDispatcher(mDocument, getter_AddRefs(newCommandDispatcher));
oldWindow->GetRootCommandDispatcher(gLastFocusedDocument, getter_AddRefs(oldCommandDispatcher));
if(newWindow)
newWindow->GetRootCommandDispatcher(mDocument, getter_AddRefs(newCommandDispatcher));
if(oldWindow)
oldWindow->GetRootCommandDispatcher(gLastFocusedDocument, getter_AddRefs(oldCommandDispatcher));
if(oldCommandDispatcher && oldCommandDispatcher != newCommandDispatcher)
oldCommandDispatcher->SetSuppressFocus(PR_TRUE);
}

View File

@ -2318,9 +2318,10 @@ nsEventStateManager::SendFocusBlur(nsIPresContext* aPresContext, nsIContent *aCo
mDocument->GetScriptGlobalObject(getter_AddRefs(newGlobal));
nsCOMPtr<nsPIDOMWindow> newWindow = do_QueryInterface(newGlobal);
nsCOMPtr<nsPIDOMWindow> oldWindow = do_QueryInterface(oldGlobal);
newWindow->GetRootCommandDispatcher(mDocument, getter_AddRefs(newCommandDispatcher));
oldWindow->GetRootCommandDispatcher(gLastFocusedDocument, getter_AddRefs(oldCommandDispatcher));
if(newWindow)
newWindow->GetRootCommandDispatcher(mDocument, getter_AddRefs(newCommandDispatcher));
if(oldWindow)
oldWindow->GetRootCommandDispatcher(gLastFocusedDocument, getter_AddRefs(oldCommandDispatcher));
if(oldCommandDispatcher && oldCommandDispatcher != newCommandDispatcher)
oldCommandDispatcher->SetSuppressFocus(PR_TRUE);
}