| Index: tests/ClearTest.cpp
|
| diff --git a/tests/ClearTest.cpp b/tests/ClearTest.cpp
|
| index 1065d940ba84350a626f9f7b38fca1e353f11aa5..7a533ba19c45a4788a5501a8276f7f7a92c28ec6 100644
|
| --- a/tests/ClearTest.cpp
|
| +++ b/tests/ClearTest.cpp
|
| @@ -37,31 +37,18 @@ static bool check_rect(GrDrawContext* dc, const SkIRect& rect, uint32_t expected
|
| return true;
|
| }
|
|
|
| -// We only really need the DC, but currently the DC doesn't own the RT so we also ref it, but that
|
| -// could be dropped when DC is a proper owner of its RT.
|
| -static bool reset_dc(sk_sp<GrDrawContext>* dc, SkAutoTUnref<GrSurface>* rtKeepAlive,
|
| - GrContext* context, int w, int h) {
|
| +static bool reset_dc(sk_sp<GrDrawContext>* dc, GrContext* context, int w, int h) {
|
| SkDEBUGCODE(uint32_t oldID = 0;)
|
| if (*dc) {
|
| SkDEBUGCODE(oldID = (*dc)->accessRenderTarget()->getUniqueID();)
|
| - rtKeepAlive->reset(nullptr);
|
| dc->reset(nullptr);
|
| }
|
| context->freeGpuResources();
|
|
|
| - GrTextureDesc desc;
|
| - desc.fWidth = w;
|
| - desc.fHeight = h;
|
| - desc.fConfig = kRGBA_8888_GrPixelConfig;
|
| - desc.fFlags = kRenderTarget_GrSurfaceFlag;
|
| + *dc = context->newDrawContext(GrContext::kTight_BackingFit, w, h, kRGBA_8888_GrPixelConfig);
|
| +
|
| + SkASSERT((*dc)->accessRenderTarget()->getUniqueID() != oldID);
|
|
|
| - rtKeepAlive->reset(context->textureProvider()->createTexture(desc, SkBudgeted::kYes));
|
| - if (!(*rtKeepAlive)) {
|
| - return false;
|
| - }
|
| - GrRenderTarget* rt = (*rtKeepAlive)->asRenderTarget();
|
| - SkASSERT(rt->getUniqueID() != oldID);
|
| - *dc = context->drawContext(sk_ref_sp(rt));
|
| return *dc != nullptr;
|
| }
|
|
|
| @@ -72,7 +59,6 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
|
|
| SkIRect fullRect = SkIRect::MakeWH(kW, kH);
|
| sk_sp<GrDrawContext> drawContext;
|
| - SkAutoTUnref<GrSurface> rtKeepAlive;
|
|
|
| // A rectangle that is inset by one on all sides and the 1-pixel wide rectangles that surround
|
| // it.
|
| @@ -96,7 +82,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| static const GrColor kColor1 = 0xABCDEF01;
|
| static const GrColor kColor2 = ~kColor1;
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -107,7 +93,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -119,7 +105,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -131,7 +117,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -143,7 +129,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -155,7 +141,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -174,7 +160,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -186,7 +172,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
| @@ -214,7 +200,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ClearBatch, reporter, ctxInfo) {
|
| failX, failY);
|
| }
|
|
|
| - if (!reset_dc(&drawContext, &rtKeepAlive, context, kW, kH)) {
|
| + if (!reset_dc(&drawContext, context, kW, kH)) {
|
| ERRORF(reporter, "Could not create draw context.");
|
| return;
|
| }
|
|
|