Bug 1060950: Call PrepareForDrawing before GetImageForSurface. r=jrmuizel

This commit is contained in:
Bas Schouten 2014-09-14 23:51:28 +02:00
parent 27762727a0
commit da9e50c160

View File

@ -100,6 +100,8 @@ DrawTargetD2D1::DrawSurface(SourceSurface *aSurface,
const DrawSurfaceOptions &aSurfOptions,
const DrawOptions &aOptions)
{
PrepareForDrawing(aOptions.mCompositionOp, ColorPattern(Color()));
RefPtr<ID2D1Image> image = GetImageForSurface(aSurface, ExtendMode::CLAMP);
if (!image) {
@ -107,8 +109,6 @@ DrawTargetD2D1::DrawSurface(SourceSurface *aSurface,
return;
}
PrepareForDrawing(aOptions.mCompositionOp, ColorPattern(Color()));
D2D1_RECT_F samplingBounds;
if (aSurfOptions.mSamplingBounds == SamplingBounds::BOUNDED) {
@ -214,12 +214,12 @@ DrawTargetD2D1::MaskSurface(const Pattern &aSource,
Point aOffset,
const DrawOptions &aOptions)
{
PrepareForDrawing(aOptions.mCompositionOp, aSource);
RefPtr<ID2D1Bitmap> bitmap;
RefPtr<ID2D1Image> image = GetImageForSurface(aMask, ExtendMode::CLAMP);
PrepareForDrawing(aOptions.mCompositionOp, aSource);
// FillOpacityMask only works if the antialias mode is MODE_ALIASED
mDC->SetAntialiasMode(D2D1_ANTIALIAS_MODE_ALIASED);