diff options
author | Robert Phillips <robertphillips@google.com> | 2017-04-05 18:56:21 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-04-05 18:56:33 +0000 |
commit | 1b35256f1166358056b2aad8ce09caa6f07912d5 (patch) | |
tree | 9d9bcd6bffc6126d656efefee15bb376dab81d42 /tests/ImageFilterCacheTest.cpp | |
parent | 1987366b3c0a9dd9280620e62e0edb7d5087a828 (diff) |
Revert "Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 2)"
This reverts commit aaee31f18c0845417103d84285e365575def3c40.
Reason for revert: possible valgrind leak
Original change's description:
> Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv (take 2)
>
> This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling.
>
> This is a reland of: https://skia-review.googlesource.com/c/11200/ (Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv)
>
> Change-Id: Icd0a90d2beb483dc24ed87c3bace9c817019e148
> Reviewed-on: https://skia-review.googlesource.com/11326
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>
TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: Ia0b92bf6402cb5f9607310d356f43bff2e3e75eb
Reviewed-on: https://skia-review.googlesource.com/11361
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'tests/ImageFilterCacheTest.cpp')
-rw-r--r-- | tests/ImageFilterCacheTest.cpp | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/tests/ImageFilterCacheTest.cpp b/tests/ImageFilterCacheTest.cpp index 95ade044bd..fe67925fda 100644 --- a/tests/ImageFilterCacheTest.cpp +++ b/tests/ImageFilterCacheTest.cpp @@ -181,6 +181,18 @@ DEF_TEST(ImageFilterCache_ImageBackedRaster, reporter) { #include "GrContext.h" #include "GrResourceProvider.h" +static GrTexture* create_texture(GrContext* context) { + SkBitmap srcBM = create_bm(); + + GrSurfaceDesc desc; + desc.fConfig = kRGBA_8888_GrPixelConfig; + desc.fFlags = kNone_GrSurfaceFlags; + desc.fWidth = kFullSize; + desc.fHeight = kFullSize; + + return context->resourceProvider()->createTexture(desc, SkBudgeted::kNo, srcBM.getPixels(), 0); +} + static sk_sp<GrTextureProxy> create_proxy(GrResourceProvider* resourceProvider) { SkBitmap srcBM = create_bm(); @@ -196,16 +208,10 @@ static sk_sp<GrTextureProxy> create_proxy(GrResourceProvider* resourceProvider) srcBM.rowBytes()); } -DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ImageFilterCache_ImageBackedGPU, reporter, ctxInfo) { - GrContext* context = ctxInfo.grContext(); - sk_sp<GrTextureProxy> srcProxy(create_proxy(context->resourceProvider())); - if (!srcProxy) { - return; - } - - GrTexture* tex = srcProxy->instantiate(context->resourceProvider()); - if (!tex) { +DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ImageFilterCache_ImageBackedGPU, reporter, ctxInfo) { + sk_sp<GrTexture> srcTexture(create_texture(ctxInfo.grContext())); + if (!srcTexture) { return; } @@ -216,8 +222,8 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ImageFilterCache_ImageBackedGPU, reporter, ct backendDesc.fWidth = kFullSize; backendDesc.fHeight = kFullSize; backendDesc.fSampleCnt = 0; - backendDesc.fTextureHandle = tex->getTextureHandle(); - sk_sp<SkImage> srcImage(SkImage::MakeFromTexture(context, + backendDesc.fTextureHandle = srcTexture->getTextureHandle(); + sk_sp<SkImage> srcImage(SkImage::MakeFromTexture(ctxInfo.grContext(), backendDesc, kPremul_SkAlphaType)); if (!srcImage) { |