From 01d6fc9d8415e400a7eac95518356ecf341aa5cb Mon Sep 17 00:00:00 2001 From: Brian Salomon Date: Wed, 25 Jul 2018 08:52:32 -0700 Subject: Go back to cleaning up MIP levels on texture export rather than assuming dirty on texture import. Bug: skia:8155 Change-Id: I23399f442d52c73906829132f798eda260b6d4ae Reviewed-on: https://skia-review.googlesource.com/143291 Auto-Submit: Brian Salomon Commit-Queue: Brian Osman Reviewed-by: Brian Osman --- src/gpu/GrDrawingManager.cpp | 4 ---- src/image/SkImage_Gpu.cpp | 11 ----------- tests/GrMipMappedTest.cpp | 6 ------ 3 files changed, 21 deletions(-) diff --git a/src/gpu/GrDrawingManager.cpp b/src/gpu/GrDrawingManager.cpp index 8b0fb22f6b..e3e7a9cba3 100644 --- a/src/gpu/GrDrawingManager.cpp +++ b/src/gpu/GrDrawingManager.cpp @@ -375,16 +375,12 @@ GrSemaphoresSubmitted GrDrawingManager::prepareSurfaceForExternalIO( if (auto* rt = surface->asRenderTarget()) { gpu->resolveRenderTarget(rt); } -#if 0 - // This is temporarily is disabled. See comment in SkImage_Gpu.cpp, - // new_wrapped_texture_common(). if (auto* tex = surface->asTexture()) { if (tex->texturePriv().mipMapped() == GrMipMapped::kYes && tex->texturePriv().mipMapsAreDirty()) { gpu->regenerateMipMapLevels(tex); } } -#endif return result; } diff --git a/src/image/SkImage_Gpu.cpp b/src/image/SkImage_Gpu.cpp index 0b3868d3fe..4ecfb22402 100644 --- a/src/image/SkImage_Gpu.cpp +++ b/src/image/SkImage_Gpu.cpp @@ -290,17 +290,6 @@ static sk_sp new_wrapped_texture_common(GrContext* ctx, if (!proxy) { return nullptr; } -#if 1 - // Temporary fix for crbug.com/850617 that can be cleanly merged back to older branches. Assume - // any MIP levels on the incoming texture are dirty. The proper fix is to make them clean on - // export. See #if 0'ed out code in GrDrawingManager::prepareSurfaceForExternalIO(). - SkASSERT(proxy->priv().isInstantiated()); - if (auto* tex = proxy->priv().peekTexture()) { - if (tex->texturePriv().mipMapped() == GrMipMapped::kYes) { - proxy->priv().peekTexture()->texturePriv().markMipMapsDirty(); - } - } -#endif return sk_make_sp(sk_ref_sp(ctx), kNeedNewImageUniqueID, at, std::move(proxy), std::move(colorSpace), SkBudgeted::kNo); } diff --git a/tests/GrMipMappedTest.cpp b/tests/GrMipMappedTest.cpp index ee4838d2ce..4c93714401 100644 --- a/tests/GrMipMappedTest.cpp +++ b/tests/GrMipMappedTest.cpp @@ -87,13 +87,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(GrWrappedMipMappedTest, reporter, ctxInfo) { if (isRT) { REPORTER_ASSERT(reporter, texture->texturePriv().mipMapsAreDirty()); } else { -#if 1 - // This is temporarily checks that the new image DOES have dirty MIP levels. See - // comment in SkImage_Gpu.cpp, new_wrapped_texture_common(). - REPORTER_ASSERT(reporter, texture->texturePriv().mipMapsAreDirty()); -#else REPORTER_ASSERT(reporter, !texture->texturePriv().mipMapsAreDirty()); -#endif } } else { REPORTER_ASSERT(reporter, GrMipMapped::kNo == texture->texturePriv().mipMapped()); -- cgit v1.2.3