icecat: add release icecat-140.10.1-1gnu1 for ecne
This commit is contained in:
parent
a5f93cb214
commit
ff85d7c623
1256 changed files with 63469 additions and 24141 deletions
|
|
@ -214,8 +214,8 @@ already_AddRefed<nsIDocShell> nsObjectLoadingContent::SetupDocShell(
|
|||
}
|
||||
|
||||
if (!docShell) {
|
||||
mFrameLoader->Destroy();
|
||||
mFrameLoader = nullptr;
|
||||
RefPtr<nsFrameLoader> loader = std::move(mFrameLoader);
|
||||
loader->Destroy();
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
|
@ -1284,8 +1284,8 @@ nsresult nsObjectLoadingContent::LoadObject(bool aNotify, bool aForceLoad,
|
|||
nsCOMPtr<nsIURILoader> uriLoader(components::URILoader::Service());
|
||||
if (NS_WARN_IF(!uriLoader)) {
|
||||
MOZ_ASSERT_UNREACHABLE("Failed to get uriLoader service");
|
||||
mFrameLoader->Destroy();
|
||||
mFrameLoader = nullptr;
|
||||
RefPtr<nsFrameLoader> loader = std::move(mFrameLoader);
|
||||
loader->Destroy();
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -1591,11 +1591,6 @@ uint32_t nsObjectLoadingContent::GetCapabilities() const {
|
|||
}
|
||||
|
||||
void nsObjectLoadingContent::Destroy() {
|
||||
if (mFrameLoader) {
|
||||
mFrameLoader->Destroy();
|
||||
mFrameLoader = nullptr;
|
||||
}
|
||||
|
||||
// Reset state so that if the element is re-appended to tree again (e.g.
|
||||
// adopting to another document), it will reload resource again.
|
||||
UnloadObject();
|
||||
|
|
@ -1619,8 +1614,8 @@ void nsObjectLoadingContent::Unlink(nsObjectLoadingContent* tmp) {
|
|||
|
||||
void nsObjectLoadingContent::UnloadObject(bool aResetState) {
|
||||
if (mFrameLoader) {
|
||||
mFrameLoader->Destroy();
|
||||
mFrameLoader = nullptr;
|
||||
RefPtr<nsFrameLoader> loader = std::move(mFrameLoader);
|
||||
loader->Destroy();
|
||||
}
|
||||
|
||||
if (aResetState) {
|
||||
|
|
@ -1718,23 +1713,30 @@ void nsObjectLoadingContent::TriggerInnerFallbackLoads() {
|
|||
}
|
||||
// Do a depth-first traverse of node tree with the current element as root,
|
||||
// looking for non-<param> elements. If we find some then we have an HTML
|
||||
// fallback for this element.
|
||||
// fallback for this element
|
||||
AutoTArray<RefPtr<nsIContent>, 4> targets;
|
||||
for (nsIContent* child = el->GetFirstChild(); child;) {
|
||||
// <object> and <embed> elements in the fallback need to StartObjectLoad.
|
||||
// Their children should be ignored since they are part of those element's
|
||||
// fallback.
|
||||
if (auto* embed = HTMLEmbedElement::FromNode(child)) {
|
||||
embed->StartObjectLoad(true, true);
|
||||
// Skip the children
|
||||
child = child->GetNextNonChildNode(el);
|
||||
} else if (auto* object = HTMLObjectElement::FromNode(child)) {
|
||||
object->StartObjectLoad(true, true);
|
||||
// Skip the children
|
||||
if (child->IsAnyOfHTMLElements(nsGkAtoms::embed, nsGkAtoms::object)) {
|
||||
targets.AppendElement(child);
|
||||
child = child->GetNextNonChildNode(el);
|
||||
} else {
|
||||
child = child->GetNextNode(el);
|
||||
}
|
||||
}
|
||||
|
||||
for (RefPtr<nsIContent>& target : targets) {
|
||||
if (!target->IsInclusiveDescendantOf(el)) {
|
||||
continue;
|
||||
}
|
||||
if (auto* embed = HTMLEmbedElement::FromNode(target)) {
|
||||
embed->StartObjectLoad(true, true);
|
||||
} else if (auto* object = HTMLObjectElement::FromNode(target)) {
|
||||
object->StartObjectLoad(true, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue