mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-15 11:25:22 -05:00
34 lines
1.2 KiB
Diff
34 lines
1.2 KiB
Diff
|
Copied from upstream:
|
||
|
https://hg.mozilla.org/releases/mozilla-esr38/raw-rev/e93aeb25e2a4
|
||
|
|
||
|
# HG changeset patch
|
||
|
# User Andrew McCreight <continuation@gmail.com>
|
||
|
# Date 1455891967 28800
|
||
|
# Node ID e93aeb25e2a44df8d22f5a065b4410620e2c8730
|
||
|
# Parent 221de852fda32714a9e484774ceafafb450ea73c
|
||
|
Bug 1249377 - Hold a strong reference to |root| in nsHTMLDocument::SetBody. r=bz, a=sylvestre
|
||
|
|
||
|
diff --git a/dom/html/nsHTMLDocument.cpp b/dom/html/nsHTMLDocument.cpp
|
||
|
--- a/dom/html/nsHTMLDocument.cpp
|
||
|
+++ b/dom/html/nsHTMLDocument.cpp
|
||
|
@@ -1044,17 +1044,17 @@ nsHTMLDocument::SetBody(nsIDOMHTMLElemen
|
||
|
ErrorResult rv;
|
||
|
SetBody(static_cast<nsGenericHTMLElement*>(newBody.get()), rv);
|
||
|
return rv.ErrorCode();
|
||
|
}
|
||
|
|
||
|
void
|
||
|
nsHTMLDocument::SetBody(nsGenericHTMLElement* newBody, ErrorResult& rv)
|
||
|
{
|
||
|
- Element* root = GetRootElement();
|
||
|
+ nsCOMPtr<Element> root = GetRootElement();
|
||
|
|
||
|
// The body element must be either a body tag or a frameset tag. And we must
|
||
|
// have a html root tag, otherwise GetBody will not return the newly set
|
||
|
// body.
|
||
|
if (!newBody || !(newBody->Tag() == nsGkAtoms::body ||
|
||
|
newBody->Tag() == nsGkAtoms::frameset) ||
|
||
|
!root || !root->IsHTML() ||
|
||
|
root->Tag() != nsGkAtoms::html) {
|
||
|
|