Bug 1440523 - Bail out from nsHTMLDocument::EditingStateChanged if the docshell is being destroyed by FlushPendingNotifications call. r=masayuki

MozReview-Commit-ID: DlFXWdpB1Xv
This commit is contained in:
Hiroyuki Ikezoe
2018-03-26 11:25:56 +09:00
parent ed979d9e0a
commit 6807e67b10
3 changed files with 21 additions and 0 deletions

View File

@@ -2363,6 +2363,13 @@ nsHTMLDocument::EditingStateChanged()
if (!docshell)
return NS_ERROR_FAILURE;
// FlushPendingNotifications might destroy our docshell.
bool isBeingDestroyed = false;
docshell->IsBeingDestroyed(&isBeingDestroyed);
if (isBeingDestroyed) {
return NS_ERROR_FAILURE;
}
nsCOMPtr<nsIEditingSession> editSession;
nsresult rv = docshell->GetEditingSession(getter_AddRefs(editSession));
NS_ENSURE_SUCCESS(rv, rv);