Bug 1340061 part 2 - Remove explicit base URI facility. r?bz
MozReview-Commit-ID: JaUzecbdT2F
--- a/dom/base/FragmentOrElement.cpp
+++ b/dom/base/FragmentOrElement.cpp
@@ -375,22 +375,16 @@ nsIContent::GetBaseURI(bool aTryUseXHRDo
// document for the base URI.
// XXX Will fail with xml:base
base = binding->PrototypeBinding()->DocURI();
break;
}
}
}
- nsIURI* explicitBaseURI = elem->GetExplicitBaseURI();
- if (explicitBaseURI) {
- base = explicitBaseURI;
- break;
- }
-
// Otherwise check for xml:base attribute
elem->GetAttr(kNameSpaceID_XML, nsGkAtoms::base, attr);
if (!attr.IsEmpty()) {
baseAttrs.AppendElement(attr);
}
elem = elem->GetParent();
} while(elem);
--- a/dom/base/nsGkAtomList.h
+++ b/dom/base/nsGkAtomList.h
@@ -2143,17 +2143,16 @@ GK_ATOM(animationEffectsForBeforePropert
GK_ATOM(animationEffectsForAfterProperty, "AnimationsEffectsForAfterProperty") // EffectSet*
GK_ATOM(cssPseudoElementBeforeProperty, "CSSPseudoElementBeforeProperty") // CSSPseudoElement*
GK_ATOM(cssPseudoElementAfterProperty, "CSSPseudoElementAfterProperty") // CSSPseudoElement*
GK_ATOM(transitionsProperty, "TransitionsProperty") // FrameTransitions*
GK_ATOM(transitionsOfBeforeProperty, "TransitionsOfBeforeProperty") // FrameTransitions*
GK_ATOM(transitionsOfAfterProperty, "TransitionsOfAfterProperty") // FrameTransitions*
GK_ATOM(genConInitializerProperty, "QuoteNodeProperty")
GK_ATOM(labelMouseDownPtProperty, "LabelMouseDownPtProperty")
-GK_ATOM(baseURIProperty, "baseURIProperty")
GK_ATOM(lockedStyleStates, "lockedStyleStates")
GK_ATOM(apzCallbackTransform, "apzCallbackTransform")
GK_ATOM(restylableAnonymousNode, "restylableAnonymousNode")
GK_ATOM(paintRequestTime, "PaintRequestTime")
GK_ATOM(pseudoProperty, "PseudoProperty") // CSSPseudoElementType
// Languages for lang-specific transforms
GK_ATOM(Japanese, "ja")
--- a/dom/base/nsINode.cpp
+++ b/dom/base/nsINode.cpp
@@ -1508,36 +1508,16 @@ nsINode::Unlink(nsINode* tmp)
}
if (tmp->HasProperties()) {
nsNodeUtils::UnlinkUserData(tmp);
tmp->DeleteProperty(nsGkAtoms::keepobjectsalive);
}
}
-static void
-ReleaseURI(void*, /* aObject*/
- nsIAtom*, /* aPropertyName */
- void* aPropertyValue,
- void* /* aData */)
-{
- nsIURI* uri = static_cast<nsIURI*>(aPropertyValue);
- NS_RELEASE(uri);
-}
-
-nsresult
-nsINode::SetExplicitBaseURI(nsIURI* aURI)
-{
- nsresult rv = SetProperty(nsGkAtoms::baseURIProperty, aURI, ReleaseURI);
- if (NS_SUCCEEDED(rv)) {
- NS_ADDREF(aURI);
- }
- return rv;
-}
-
static nsresult
AdoptNodeIntoOwnerDoc(nsINode *aParent, nsINode *aNode)
{
NS_ASSERTION(!aNode->GetParentNode(),
"Should have removed from parent already");
nsIDocument *doc = aParent->OwnerDoc();
--- a/dom/base/nsINode.h
+++ b/dom/base/nsINode.h
@@ -1286,24 +1286,16 @@ public:
* supports setting a per-node base URI.
*
* @return the base URI
*/
virtual already_AddRefed<nsIURI> GetBaseURI(bool aTryUseXHRDocBaseURI = false) const = 0;
already_AddRefed<nsIURI> GetBaseURIObject() const;
/**
- * Facility for explicitly setting a base URI on a node.
- */
- nsresult SetExplicitBaseURI(nsIURI* aURI);
- /**
- * The explicit base URI, if set, otherwise null
- */
-
- /**
* Return true if the node may be apz aware. There are two cases. One is that
* the node is apz aware (such as HTMLInputElement with number type). The
* other is that the node has apz aware listeners. This is a non-virtual
* function which calls IsNodeApzAwareInternal only when the MayBeApzAware is
* set. We check the details in IsNodeApzAwareInternal which may be overriden
* by child classes
*/
bool IsNodeApzAware() const
@@ -1324,26 +1316,16 @@ public:
// HTML elements named <shadow> may or may not be HTMLShadowElement. This is
// a way to ask an element whether it's an HTMLShadowElement.
virtual bool IsHTMLShadowElement() const { return false; }
// Elements named <content> may or may not be HTMLContentElement. This is a
// way to ask an element whether it's an HTMLContentElement.
virtual bool IsHTMLContentElement() const { return false; }
-protected:
- nsIURI* GetExplicitBaseURI() const {
- if (!HasProperties()) {
- return nullptr;
- }
-
- return static_cast<nsIURI*>(GetProperty(nsGkAtoms::baseURIProperty));
- }
-
-public:
void GetTextContent(nsAString& aTextContent,
mozilla::OOMReporter& aError)
{
GetTextContentInternal(aTextContent, aError);
}
void SetTextContent(const nsAString& aTextContent,
mozilla::ErrorResult& aError)
{