Bug 1411817: Add do_AddRef overloads for nsCOMPtr<T> and nsRevocableEventPtr<T>. r=froydnj

MozReview-Commit-ID: gEU7whtNHc

--HG--
extra : rebase_source : 6763e6b31be8a3341f968eef057b756fbfe3cbbe
extra : amend_source : da6140fb0559d78b46e80e72e8b6768bf2364fb1
This commit is contained in:
Kris Maglione 2017-10-25 19:46:50 -07:00
parent 175158cc25
commit b46bd8b6b0
11 changed files with 26 additions and 11 deletions

View file

@ -1441,7 +1441,7 @@ already_AddRefed<SystemPrincipal>
nsScriptSecurityManager::SystemPrincipalSingletonConstructor()
{
if (gScriptSecMan)
return do_AddRef(gScriptSecMan->mSystemPrincipal.get()).downcast<SystemPrincipal>();
return do_AddRef(gScriptSecMan->mSystemPrincipal).downcast<SystemPrincipal>();
return nullptr;
}

View file

@ -2501,7 +2501,7 @@ nsDocument::MaybeDowngradePrincipal(nsIPrincipal* aPrincipal)
MOZ_ASSERT(expanded->WhiteList().Length() > 0);
return do_AddRef(expanded->WhiteList().LastElement().get());
return do_AddRef(expanded->WhiteList().LastElement());
}
if (!sChromeInContentPrefCached) {

View file

@ -144,7 +144,7 @@ nsFontCache::GetMetricsFor(const nsFont& aFont,
RefPtr<nsFontMetrics> fm = new nsFontMetrics(aFont, params, mContext);
// the mFontMetrics list has the "head" at the end, because append
// is cheaper than insert
mFontMetrics.AppendElement(do_AddRef(fm.get()).take());
mFontMetrics.AppendElement(do_AddRef(fm).take());
return fm.forget();
}

View file

@ -12296,7 +12296,7 @@ nsCSSFrameConstructor::CreateListBoxContent(nsContainerFrame* aParentFrame,
GetAbsoluteContainingBlock(aParentFrame, FIXED_POS),
GetAbsoluteContainingBlock(aParentFrame, ABS_POS),
GetFloatContainingBlock(aParentFrame),
do_AddRef(mTempFrameTreeState.get()));
do_AddRef(mTempFrameTreeState));
// If we ever initialize the ancestor filter on |state|, make sure
// to push the right parent!

View file

@ -3494,7 +3494,7 @@ nsRootPresContext::AddWillPaintObserver(nsIRunnable* aRunnable)
if (!mWillPaintFallbackEvent.IsPending()) {
mWillPaintFallbackEvent = new RunWillPaintObservers(this);
Document()->Dispatch(TaskCategory::Other,
do_AddRef(mWillPaintFallbackEvent.get()));
do_AddRef(mWillPaintFallbackEvent));
}
mWillPaintObservers.AppendElement(aRunnable);
}

View file

@ -338,7 +338,7 @@ ExtensionProtocolHandler::GetSingleton()
sSingleton = new ExtensionProtocolHandler();
ClearOnShutdown(&sSingleton);
}
return do_AddRef(sSingleton.get());
return do_AddRef(sSingleton);
}
ExtensionProtocolHandler::ExtensionProtocolHandler()

View file

@ -45,7 +45,7 @@ public:
already_AddRefed<nsIEventTarget> GetEventTarget() override
{
return do_AddRef(mTarget.get());
return do_AddRef(mTarget);
}
protected:

View file

@ -1549,4 +1549,12 @@ RefPtr<T>::operator=(const nsCOMPtr_helper& aHelper)
return *this;
}
template <class T>
inline already_AddRefed<T>
do_AddRef(const nsCOMPtr<T>& aObj)
{
nsCOMPtr<T> ref(aObj);
return ref.forget();
}
#endif // !defined(nsCOMPtr_h___)

View file

@ -327,14 +327,14 @@ already_AddRefed<nsIThreadObserver>
SchedulerEventQueue::GetObserver()
{
MutexAutoLock lock(mLock);
return do_AddRef(mObserver.get());
return do_AddRef(mObserver);
}
already_AddRefed<nsIThreadObserver>
SchedulerEventQueue::GetObserverOnThread()
{
MOZ_ASSERT(NS_IsMainThread());
return do_AddRef(mObserver.get());
return do_AddRef(mObserver);
}
void

View file

@ -249,14 +249,14 @@ already_AddRefed<nsIThreadObserver>
ThreadEventQueue<InnerQueueT>::GetObserver()
{
MutexAutoLock lock(mLock);
return do_AddRef(mObserver.get());
return do_AddRef(mObserver);
}
template<class InnerQueueT>
already_AddRefed<nsIThreadObserver>
ThreadEventQueue<InnerQueueT>::GetObserverOnThread()
{
return do_AddRef(mObserver.get());
return do_AddRef(mObserver);
}
template<class InnerQueueT>

View file

@ -1632,6 +1632,13 @@ private:
RefPtr<T> mEvent;
};
template <class T>
inline already_AddRefed<T>
do_AddRef(nsRevocableEventPtr<T>& aObj)
{
return do_AddRef(aObj.get());
}
/**
* A simple helper to suffix thread pool name
* with incremental numbers.