Make instantiate return a Boolean
From an off-line conversation:
The longer term idea will be to create a helper class isolates the
ability to instantiate proxies until flush time. The peek* methods
could then be moved to GrSurfaceProxy.
Change-Id: I8e8c02c098475b77d515791c0d6b81f7e4a327dd
Reviewed-on: https://skia-review.googlesource.com/18076
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
diff --git a/tests/ClipStackTest.cpp b/tests/ClipStackTest.cpp
index ba80933..e0df2ca 100644
--- a/tests/ClipStackTest.cpp
+++ b/tests/ClipStackTest.cpp
@@ -16,6 +16,7 @@
#include "GrClipStackClip.h"
#include "GrReducedClip.h"
#include "GrResourceCache.h"
+#include "GrSurfaceProxyPriv.h"
#include "GrTextureProxy.h"
typedef GrReducedClip::ElementList ElementList;
typedef GrReducedClip::InitialState InitialState;
@@ -1442,7 +1443,8 @@
stack.save();
stack.clipPath(path, m, SkClipOp::kIntersect, true);
sk_sp<GrTextureProxy> mask = GrClipStackClip(&stack).testingOnly_createClipMask(context);
- GrTexture* tex = mask->instantiateTexture(context->resourceProvider());
+ mask->instantiate(context->resourceProvider());
+ GrTexture* tex = mask->priv().peekTexture();
REPORTER_ASSERT(reporter, 0 == strcmp(tex->getUniqueKey().tag(), kTag));
// Make sure mask isn't pinned in cache.
mask.reset(nullptr);
diff --git a/tests/ImageFilterCacheTest.cpp b/tests/ImageFilterCacheTest.cpp
index a8b8f87..d0c6c5b 100644
--- a/tests/ImageFilterCacheTest.cpp
+++ b/tests/ImageFilterCacheTest.cpp
@@ -206,10 +206,10 @@
return;
}
- GrTexture* tex = srcProxy->instantiateTexture(context->resourceProvider());
- if (!tex) {
+ if (!srcProxy->instantiate(context->resourceProvider())) {
return;
}
+ GrTexture* tex = srcProxy->priv().peekTexture();
GrBackendTexture backendTex = GrTest::CreateBackendTexture(context->contextPriv().getBackend(),
kFullSize,
diff --git a/tests/ProxyTest.cpp b/tests/ProxyTest.cpp
index 40cbeeb..dc34c76 100644
--- a/tests/ProxyTest.cpp
+++ b/tests/ProxyTest.cpp
@@ -52,8 +52,8 @@
REPORTER_ASSERT(reporter, rtProxy->numStencilSamples() == numSamples);
GrSurfaceProxy::UniqueID idBefore = rtProxy->uniqueID();
- GrRenderTarget* rt = rtProxy->instantiateRenderTarget(provider);
- REPORTER_ASSERT(reporter, rt);
+ REPORTER_ASSERT(reporter, rtProxy->instantiate(provider));
+ GrRenderTarget* rt = rtProxy->priv().peekRenderTarget();
REPORTER_ASSERT(reporter, rtProxy->uniqueID() == idBefore);
if (wasWrapped) {
@@ -86,8 +86,9 @@
SkBackingFit fit,
bool wasWrapped) {
GrSurfaceProxy::UniqueID idBefore = texProxy->uniqueID();
- GrTexture* tex = texProxy->instantiateTexture(provider);
- REPORTER_ASSERT(reporter, tex);
+
+ REPORTER_ASSERT(reporter, texProxy->instantiate(provider));
+ GrTexture* tex = texProxy->priv().peekTexture();
REPORTER_ASSERT(reporter, texProxy->uniqueID() == idBefore);
if (wasWrapped) {