Bug 1441009: Don't null-check OwnerDoc. r?smaug
Can't return null.
MozReview-Commit-ID: JzcNwmsCxIu
--- a/dom/base/FragmentOrElement.cpp
+++ b/dom/base/FragmentOrElement.cpp
@@ -1019,18 +1019,17 @@ nsIContent::GetEventTargetParent(EventCh
aVisitor.mEventTargetAtParent != insertionParent),
"Retargeting and having insertion parent!");
if (insertionParent) {
parent = insertionParent;
}
}
if (!aVisitor.mEvent->mFlags.mComposedInNativeAnonymousContent &&
- IsRootOfNativeAnonymousSubtree() && OwnerDoc() &&
- OwnerDoc()->GetWindow()) {
+ IsRootOfNativeAnonymousSubtree() && OwnerDoc()->GetWindow()) {
aVisitor.SetParentTarget(OwnerDoc()->GetWindow()->GetParentTarget(), true);
} else if (parent) {
aVisitor.SetParentTarget(parent, false);
if (slot) {
ShadowRoot* root = slot->GetContainingShadow();
if (root && root->IsClosed()) {
aVisitor.mParentIsSlotInClosedTree = true;
}
--- a/dom/canvas/CanvasRenderingContext2D.cpp
+++ b/dom/canvas/CanvasRenderingContext2D.cpp
@@ -1857,17 +1857,17 @@ CanvasRenderingContext2D::RegisterAlloca
CycleCollectedJSRuntime::Get()->
AddZoneWaitingForGC(JS::GetObjectZone(wrapper));
}
}
static already_AddRefed<LayerManager>
LayerManagerFromCanvasElement(nsINode* aCanvasElement)
{
- if (!aCanvasElement || !aCanvasElement->OwnerDoc()) {
+ if (!aCanvasElement) {
return nullptr;
}
return nsContentUtils::PersistentLayerManagerForDocument(aCanvasElement->OwnerDoc());
}
bool
CanvasRenderingContext2D::TrySkiaGLTarget(RefPtr<gfx::DrawTarget>& aOutDT,
@@ -1922,17 +1922,17 @@ CanvasRenderingContext2D::TrySkiaGLTarge
bool
CanvasRenderingContext2D::TrySharedTarget(RefPtr<gfx::DrawTarget>& aOutDT,
RefPtr<layers::PersistentBufferProvider>& aOutProvider)
{
aOutDT = nullptr;
aOutProvider = nullptr;
- if (!mCanvasElement || !mCanvasElement->OwnerDoc()) {
+ if (!mCanvasElement) {
return false;
}
if (mBufferProvider &&
(mBufferProvider->GetType() == LayersBackend::LAYERS_CLIENT ||
mBufferProvider->GetType() == LayersBackend::LAYERS_WR)) {
// we are already using a shared buffer provider, we are allocating a new one
// because the current one failed so let's just fall back to the basic provider.
@@ -4971,18 +4971,19 @@ CanvasRenderingContext2D::IsPointInPath(
{
if (!FloatValidate(aX, aY)) {
return false;
}
// Check for site-specific permission and return false if no permission.
if (mCanvasElement) {
nsCOMPtr<nsIDocument> ownerDoc = mCanvasElement->OwnerDoc();
- if (!ownerDoc || !CanvasUtils::IsImageExtractionAllowed(ownerDoc, aCx))
+ if (!CanvasUtils::IsImageExtractionAllowed(ownerDoc, aCx)) {
return false;
+ }
}
EnsureUserSpacePath(aWinding);
if (!mPath) {
return false;
}
if (mPathTransformWillUpdate) {
@@ -5013,18 +5014,19 @@ CanvasRenderingContext2D::IsPointInStrok
{
if (!FloatValidate(aX, aY)) {
return false;
}
// Check for site-specific permission and return false if no permission.
if (mCanvasElement) {
nsCOMPtr<nsIDocument> ownerDoc = mCanvasElement->OwnerDoc();
- if (!ownerDoc || !CanvasUtils::IsImageExtractionAllowed(ownerDoc, aCx))
+ if (!CanvasUtils::IsImageExtractionAllowed(ownerDoc, aCx)) {
return false;
+ }
}
EnsureUserSpacePath();
if (!mPath) {
return false;
}
const ContextState &state = CurrentState();
@@ -5882,18 +5884,17 @@ CanvasRenderingContext2D::GetImageDataAr
dstWriteRect.MoveBy(-aX, -aY);
// Check for site-specific permission. This check is not needed if the
// canvas was created with a docshell (that is only done for special
// internal uses).
bool usePlaceholder = false;
if (mCanvasElement) {
nsCOMPtr<nsIDocument> ownerDoc = mCanvasElement->OwnerDoc();
- usePlaceholder = !ownerDoc ||
- !CanvasUtils::IsImageExtractionAllowed(ownerDoc, aCx);
+ usePlaceholder = !CanvasUtils::IsImageExtractionAllowed(ownerDoc, aCx);
}
do {
JS::AutoCheckCannotGC nogc;
bool isShared;
uint8_t* data = JS_GetUint8ClampedArrayData(darray, &isShared, nogc);
MOZ_ASSERT(!isShared); // Should not happen, data was created above
--- a/dom/ipc/TabParent.cpp
+++ b/dom/ipc/TabParent.cpp
@@ -311,17 +311,17 @@ TabParent::SetOwnerElement(Element* aEle
Unused << SendSetWidgetNativeData(widgetNativeData);
}
}
}
void
TabParent::AddWindowListeners()
{
- if (mFrameElement && mFrameElement->OwnerDoc()) {
+ if (mFrameElement) {
if (nsCOMPtr<nsPIDOMWindowOuter> window = mFrameElement->OwnerDoc()->GetWindow()) {
nsCOMPtr<EventTarget> eventTarget = window->GetTopWindowRoot();
if (eventTarget) {
eventTarget->AddEventListener(NS_LITERAL_STRING("MozUpdateWindowPos"),
this, false, false);
}
}
}
--- a/dom/plugins/base/nsPluginInstanceOwner.cpp
+++ b/dom/plugins/base/nsPluginInstanceOwner.cpp
@@ -492,17 +492,17 @@ NS_IMETHODIMP nsPluginInstanceOwner::Get
{
nsCOMPtr<nsIContent> content = do_QueryReferent(mContent);
if (!aDocument || !content) {
return NS_ERROR_NULL_POINTER;
}
// XXX sXBL/XBL2 issue: current doc or owner doc?
// But keep in mind bug 322414 comment 33
- NS_IF_ADDREF(*aDocument = content->OwnerDoc());
+ NS_ADDREF(*aDocument = content->OwnerDoc());
return NS_OK;
}
NS_IMETHODIMP nsPluginInstanceOwner::InvalidateRect(NPRect *invalidRect)
{
// If our object frame has gone away, we won't be able to determine
// up-to-date-ness, so just fire off the event.
if (mWaitingForPaint && (!mPluginFrame || IsUpToDate())) {
@@ -3287,17 +3287,17 @@ void nsPluginInstanceOwner::SetFrame(nsP
nsFocusManager* fm = nsFocusManager::GetFocusManager();
const nsIContent* content = aFrame->GetContent();
if (fm && content) {
mContentFocused = (content == fm->GetFocusedContent());
}
// Register for widget-focus events on the window root.
- if (content && content->OwnerDoc() && content->OwnerDoc()->GetWindow()) {
+ if (content && content->OwnerDoc()->GetWindow()) {
nsCOMPtr<EventTarget> windowRoot = content->OwnerDoc()->GetWindow()->GetTopWindowRoot();
if (windowRoot) {
windowRoot->AddEventListener(NS_LITERAL_STRING("activate"),
this, false, false);
windowRoot->AddEventListener(NS_LITERAL_STRING("deactivate"),
this, false, false);
windowRoot->AddEventListener(NS_LITERAL_STRING("MozPerformDelayedBlur"),
this, false, false);
--- a/dom/svg/SVGViewportElement.h
+++ b/dom/svg/SVGViewportElement.h
@@ -142,17 +142,17 @@ public:
virtual nsSVGViewBox* GetViewBox() override;
protected:
// implementation helpers:
bool IsRoot() const {
NS_ASSERTION((IsInUncomposedDoc() && !GetParent()) ==
- (OwnerDoc() && (OwnerDoc()->GetRootElement() == this)),
+ (OwnerDoc()->GetRootElement() == this),
"Can't determine if we're root");
return IsInUncomposedDoc() && !GetParent();
}
/**
* Returns true if either this is an SVG <svg> element that is the child of
* another non-foreignObject SVG element, or this is a SVG <symbol> element
* this is the root of a use-element shadow tree.