mirror of
https://github.com/mozilla-firefox/firefox
synced 2026-08-12 12:35:33 +00:00
Bug 2037700: Use MakeRefPtr and MakeAndAddRef instead of 'new' to allocate gfxDrawable instances. r=media-playback-reviewers,layout-reviewers,emilio,padenot
I'm using MakeRefPtr nearly everywhere, except when the old code was immediately returning foo.forget() - in those spots, I'm using MakeAndAddRef for brevity (since that function does the forget() internally). Differential Revision: https://phabricator.services.mozilla.com/D299013
This commit is contained in:
committed by
dholbert@mozilla.com
parent
26ad6d0139
commit
edd61684e6
@@ -9632,8 +9632,7 @@ already_AddRefed<imgIContainer> nsContentUtils::IPCImageToImage(
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
RefPtr<gfxDrawable> drawable =
|
||||
new gfxSurfaceDrawable(surface, surface->GetSize());
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(surface, surface->GetSize());
|
||||
nsCOMPtr<imgIContainer> imageContainer =
|
||||
image::ImageOps::CreateFromDrawable(drawable);
|
||||
return imageContainer.forget();
|
||||
|
||||
@@ -105,8 +105,7 @@ inline nsresult GetEncodedImageBuffer(gfx::DataSourceSurface* aSurface,
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
RefPtr<gfxDrawable> drawable =
|
||||
new gfxSurfaceDrawable(aSurface, aSurface->GetSize());
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(aSurface, aSurface->GetSize());
|
||||
nsCOMPtr<imgIContainer> image = image::ImageOps::CreateFromDrawable(drawable);
|
||||
|
||||
nsCOMPtr<nsIInputStream> inputStream;
|
||||
|
||||
@@ -112,9 +112,7 @@ already_AddRefed<gfxSurfaceDrawable> gfxCallbackDrawable::MakeSurfaceDrawable(
|
||||
|
||||
RefPtr<SourceSurface> surface = dt->Snapshot();
|
||||
if (surface) {
|
||||
RefPtr<gfxSurfaceDrawable> drawable =
|
||||
new gfxSurfaceDrawable(surface, mSize);
|
||||
return drawable.forget();
|
||||
return MakeAndAddRef<gfxSurfaceDrawable>(surface, mSize);
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
@@ -356,8 +356,7 @@ ClippedImage::Draw(gfxContext* aContext, const nsIntSize& aSize,
|
||||
}
|
||||
|
||||
// Create a drawable from that surface.
|
||||
RefPtr<gfxSurfaceDrawable> drawable =
|
||||
new gfxSurfaceDrawable(surface, aSize);
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(surface, aSize);
|
||||
|
||||
// Draw.
|
||||
gfxUtils::DrawPixelSnapped(aContext, drawable, SizeDouble(aSize), aRegion,
|
||||
|
||||
@@ -88,7 +88,7 @@ already_AddRefed<SourceSurface> OrientedImage::OrientSurface(
|
||||
}
|
||||
|
||||
// Create our drawable.
|
||||
RefPtr<gfxDrawable> drawable = new gfxSurfaceDrawable(aSurface, originalSize);
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(aSurface, originalSize);
|
||||
|
||||
// Determine an appropriate format for the surface.
|
||||
gfx::SurfaceFormat surfaceFormat = IsOpaque(aSurface->GetFormat())
|
||||
|
||||
@@ -956,8 +956,7 @@ VectorImage::Draw(gfxContext* aContext, const nsIntSize& aSize,
|
||||
std::tie(sourceSurface, params.size) =
|
||||
LookupCachedSurface(aSize, params.svgContext, aFlags);
|
||||
if (sourceSurface) {
|
||||
RefPtr<gfxDrawable> drawable =
|
||||
new gfxSurfaceDrawable(sourceSurface, params.size);
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(sourceSurface, params.size);
|
||||
Show(drawable, params);
|
||||
return ImgDrawResult::SUCCESS;
|
||||
}
|
||||
@@ -980,8 +979,7 @@ VectorImage::Draw(gfxContext* aContext, const nsIntSize& aSize,
|
||||
return ImgDrawResult::SUCCESS;
|
||||
}
|
||||
|
||||
RefPtr<gfxDrawable> drawable =
|
||||
new gfxSurfaceDrawable(sourceSurface, params.size);
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(sourceSurface, params.size);
|
||||
Show(drawable, params);
|
||||
SendFrameComplete(didCache, params.flags);
|
||||
return ImgDrawResult::SUCCESS;
|
||||
|
||||
@@ -109,7 +109,7 @@ static already_AddRefed<imgIContainer> GetSymbolicIconImage(nsAtom* aName,
|
||||
if (NS_WARN_IF(!surface)) {
|
||||
return nullptr;
|
||||
}
|
||||
RefPtr drawable = new gfxSurfaceDrawable(surface, surface->GetSize());
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(surface, surface->GetSize());
|
||||
nsCOMPtr<imgIContainer> container = ImageOps::CreateFromDrawable(drawable);
|
||||
MOZ_ASSERT(container);
|
||||
lookup.Set(SymbolicImageEntry{std::move(key), std::move(container)});
|
||||
@@ -809,10 +809,9 @@ already_AddRefed<gfxDrawable> nsImageRenderer::DrawableForElement(
|
||||
}
|
||||
NS_ASSERTION(mImageElementSurface.GetSourceSurface(),
|
||||
"Surface should be ready.");
|
||||
RefPtr<gfxDrawable> drawable =
|
||||
new gfxSurfaceDrawable(mImageElementSurface.GetSourceSurface().get(),
|
||||
mImageElementSurface.mSize);
|
||||
return drawable.forget();
|
||||
return MakeAndAddRef<gfxSurfaceDrawable>(
|
||||
mImageElementSurface.GetSourceSurface().get(),
|
||||
mImageElementSurface.mSize);
|
||||
}
|
||||
|
||||
ImgDrawResult nsImageRenderer::DrawLayer(
|
||||
|
||||
@@ -215,7 +215,7 @@ void MediaHardwareKeysEventSourceMacMediaCenter::SetMediaMetadata(
|
||||
break;
|
||||
}
|
||||
|
||||
RefPtr<gfxDrawable> drawable = new gfxSurfaceDrawable(
|
||||
auto drawable = MakeRefPtr<gfxSurfaceDrawable>(
|
||||
imageData.mDataSurface, imageData.mDataSurface->GetSize());
|
||||
nsCOMPtr<imgIContainer> imageContainer =
|
||||
image::ImageOps::CreateFromDrawable(drawable);
|
||||
|
||||
Reference in New Issue
Block a user