Bug 1452947: Remove useless PtrHolder / PtrHandle stuff now that URIs are thread-safe. r?heycam
MozReview-Commit-ID: 5f2B8bqBnDp
--- a/layout/style/ServoBindings.toml
+++ b/layout/style/ServoBindings.toml
@@ -289,18 +289,16 @@ whitelist-types = [
"nsCSSValuePair_heap",
"nsCSSValuePairList",
"nsCSSValuePairList_heap",
"nsCSSValueTriplet_heap",
"nsCursorImage",
"nsFont",
"nsAtom",
"nsDynamicAtom",
- "nsMainThreadPtrHandle",
- "nsMainThreadPtrHolder",
"nsMargin",
"nsMediaFeature",
"nsMediaFeatures",
"nsMediaList",
"nsRect",
"nsRestyleHint",
"nsresult",
"nsSimpleContentList",
--- a/layout/style/nsCSSValue.cpp
+++ b/layout/style/nsCSSValue.cpp
@@ -1147,30 +1147,30 @@ nsCSSValue::Array::SizeOfIncludingThis(m
{
size_t n = aMallocSizeOf(this);
for (size_t i = 0; i < mCount; i++) {
n += mArray[i].SizeOfExcludingThis(aMallocSizeOf);
}
return n;
}
-css::URLValueData::URLValueData(already_AddRefed<PtrHolder<nsIURI>> aURI,
+css::URLValueData::URLValueData(already_AddRefed<nsIURI> aURI,
const nsAString& aString,
already_AddRefed<URLExtraData> aExtraData)
: mURI(Move(aURI))
, mExtraData(Move(aExtraData))
, mURIResolved(true)
, mStrings(aString)
, mUsingRustString(false)
{
MOZ_ASSERT(mExtraData);
MOZ_ASSERT(mExtraData->GetPrincipal());
}
-css::URLValueData::URLValueData(already_AddRefed<PtrHolder<nsIURI>> aURI,
+css::URLValueData::URLValueData(already_AddRefed<nsIURI> aURI,
ServoRawOffsetArc<RustString> aString,
already_AddRefed<URLExtraData> aExtraData)
: mURI(Move(aURI))
, mExtraData(Move(aExtraData))
, mURIResolved(true)
, mStrings(aString)
, mUsingRustString(true)
{
@@ -1311,17 +1311,17 @@ css::URLValueData::GetURI() const
NS_NewURI(getter_AddRefs(newURI),
NS_ConvertUTF16toUTF8(mStrings.mString),
nullptr, mExtraData->BaseURI());
} else {
NS_NewURI(getter_AddRefs(newURI),
GetRustString(),
nullptr, mExtraData->BaseURI());
}
- mURI = new PtrHolder<nsIURI>("URLValueData::mURI", newURI.forget());
+ mURI = newURI.forget();
mURIResolved = true;
}
return mURI;
}
bool
css::URLValueData::IsLocalRef() const
@@ -1465,17 +1465,17 @@ URLValue::URLValue(const nsAString& aStr
: URLValueData(aString, do_AddRef(new URLExtraData(aBaseURI, aReferrer,
aOriginPrincipal)))
{
MOZ_ASSERT(NS_IsMainThread());
}
URLValue::URLValue(nsIURI* aURI, const nsAString& aString, nsIURI* aBaseURI,
nsIURI* aReferrer, nsIPrincipal* aOriginPrincipal)
- : URLValueData(do_AddRef(new PtrHolder<nsIURI>("URLValueData::mURI", aURI)),
+ : URLValueData(do_AddRef(aURI),
aString,
do_AddRef(new URLExtraData(aBaseURI, aReferrer,
aOriginPrincipal)))
{
MOZ_ASSERT(NS_IsMainThread());
}
size_t
@@ -1489,29 +1489,27 @@ css::URLValue::SizeOfIncludingThis(mozil
}
return n;
}
css::ImageValue::ImageValue(nsIURI* aURI, const nsAString& aString,
already_AddRefed<URLExtraData> aExtraData,
nsIDocument* aDocument,
CORSMode aCORSMode)
- : URLValueData(do_AddRef(new PtrHolder<nsIURI>("URLValueData::mURI", aURI)),
- aString, Move(aExtraData))
+ : URLValueData(do_AddRef(aURI), aString, Move(aExtraData))
{
mCORSMode = aCORSMode;
Initialize(aDocument);
}
css::ImageValue::ImageValue(nsIURI* aURI, ServoRawOffsetArc<RustString> aString,
already_AddRefed<URLExtraData> aExtraData,
nsIDocument* aDocument,
CORSMode aCORSMode)
- : URLValueData(do_AddRef(new PtrHolder<nsIURI>("URLValueData::mURI", aURI)),
- aString, Move(aExtraData))
+ : URLValueData(do_AddRef(aURI), aString, Move(aExtraData))
{
mCORSMode = aCORSMode;
Initialize(aDocument);
}
css::ImageValue::ImageValue(const nsAString& aString,
already_AddRefed<URLExtraData> aExtraData,
CORSMode aCORSMode)
--- a/layout/style/nsCSSValue.h
+++ b/layout/style/nsCSSValue.h
@@ -104,20 +104,20 @@ protected:
// For both constructors principal of aExtraData must not be null.
// Construct with a base URI; this will create the actual URI lazily from
// aString and aExtraData.
URLValueData(const nsAString& aString,
already_AddRefed<URLExtraData> aExtraData);
URLValueData(ServoRawOffsetArc<RustString> aString,
already_AddRefed<URLExtraData> aExtraData);
// Construct with the actual URI.
- URLValueData(already_AddRefed<PtrHolder<nsIURI>> aURI,
+ URLValueData(already_AddRefed<nsIURI> aURI,
const nsAString& aString,
already_AddRefed<URLExtraData> aExtraData);
- URLValueData(already_AddRefed<PtrHolder<nsIURI>> aURI,
+ URLValueData(already_AddRefed<nsIURI> aURI,
ServoRawOffsetArc<RustString> aString,
already_AddRefed<URLExtraData> aExtraData);
public:
// Returns true iff all fields of the two URLValueData objects are equal.
//
// Only safe to call on the main thread, since this will call Equals on the
// nsIURI and nsIPrincipal objects stored on the URLValueData objects.
@@ -169,17 +169,17 @@ public:
// Returns this URL's UTF-16 representation, converting if necessary.
nsString GetUTF16StringForAnyThread() const;
bool IsStringEmpty() const;
private:
// mURI stores the lazily resolved URI. This may be null if the URI is
// invalid, even once resolved.
- mutable PtrHandle<nsIURI> mURI;
+ mutable nsCOMPtr<nsIURI> mURI;
public:
RefPtr<URLExtraData> mExtraData;
private:
// Returns a substring based on mStrings.mRustString which should not be exposed
// to external consumers.
nsDependentCSubstring GetRustString() const;
mutable bool mURIResolved;