Revert "[M62 cherry-pick] Disable deferred proxies a different way in Chrome"
This reverts commit f06e581d4013d8290e8de81f9afc557deaf762c2.
Reason for revert: nag bot
Original change's description:
> [M62 cherry-pick] Disable deferred proxies a different way in Chrome
>
> This keeps crbug.com/769760 working but also fixes the new bug (crbug.com/769898)
>
> One can compare with https://skia-review.googlesource.com/c/skia/+/18592 ([M60 cherry-pick] Disable deferred proxies for M60 branch)
>
> No-Tree-Checks: true
> No-Try: true
> No-Presubmit: true
> Bug: 769898
> Change-Id: Iaae59ae6534e5ee9a1fc8f30149e32bd5e022b78
> Reviewed-on: https://skia-review.googlesource.com/59683
> Reviewed-by: Brian Salomon <bsalomon@google.com>
TBR=bsalomon@google.com,robertphillips@google.com
Change-Id: I3a61ccb59e6027e0b344e723e9cb6b79b2eb3f47
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 769898
Reviewed-on: https://skia-review.googlesource.com/59780
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/GrSurfaceProxy.cpp b/src/gpu/GrSurfaceProxy.cpp
index 6bb5802..fd29fef 100644
--- a/src/gpu/GrSurfaceProxy.cpp
+++ b/src/gpu/GrSurfaceProxy.cpp
@@ -238,20 +238,25 @@
GrSurfaceDesc copyDesc = desc;
copyDesc.fSampleCnt = caps->getSampleCount(desc.fSampleCnt, desc.fConfig);
- // Temporarily force instantiation for crbug.com/769760 and crbug.com/769898
- sk_sp<GrTexture> tex;
+ // Temporarily force instantiation for crbug.com/769760
+ if (willBeRT) {
+ // We know anything we instantiate later from this deferred path will be
+ // both texturable and renderable
+ sk_sp<GrTextureProxy> temp(new GrTextureRenderTargetProxy(*caps, copyDesc, fit,
+ budgeted, flags));
+ if (temp && temp->instantiate(resourceProvider)) {
+ return temp;
+ }
- if (SkBackingFit::kApprox == fit) {
- tex = resourceProvider->createApproxTexture(copyDesc, flags);
- } else {
- tex = resourceProvider->createTexture(copyDesc, budgeted, flags);
- }
-
- if (!tex) {
return nullptr;
}
- return GrSurfaceProxy::MakeWrapped(std::move(tex), copyDesc.fOrigin);
+ sk_sp<GrTextureProxy> temp(new GrTextureProxy(copyDesc, fit, budgeted, nullptr, 0, flags));
+ if (temp && temp->instantiate(resourceProvider)) {
+ return temp;
+ }
+
+ return nullptr;
}
sk_sp<GrTextureProxy> GrSurfaceProxy::MakeDeferred(GrResourceProvider* resourceProvider,
diff --git a/tests/DetermineDomainModeTest.cpp b/tests/DetermineDomainModeTest.cpp
index 404f519..ee9a694 100644
--- a/tests/DetermineDomainModeTest.cpp
+++ b/tests/DetermineDomainModeTest.cpp
@@ -342,7 +342,6 @@
insetAmount, halfFilterWidth, 0, name);
}
-#if 0
static void proxy_test(skiatest::Reporter* reporter, GrResourceProvider* resourceProvider) {
GrTextureProducer_TestAccess::DomainMode actualMode, expectedMode;
SkRect actualDomainRect;
@@ -446,4 +445,3 @@
}
#endif
-#endif
diff --git a/tests/ProxyRefTest.cpp b/tests/ProxyRefTest.cpp
index 3afba6a..e605716 100644
--- a/tests/ProxyRefTest.cpp
+++ b/tests/ProxyRefTest.cpp
@@ -46,7 +46,6 @@
return fPendingWrites;
}
-#if 0
static const int kWidthHeight = 128;
static void check_refs(skiatest::Reporter* reporter,
@@ -193,4 +192,3 @@
}
#endif
-#endif
diff --git a/tests/ProxyTest.cpp b/tests/ProxyTest.cpp
index a6501dd..453cb5e 100644
--- a/tests/ProxyTest.cpp
+++ b/tests/ProxyTest.cpp
@@ -10,7 +10,6 @@
#include "Test.h"
#if SK_SUPPORT_GPU
-#if 0
#include "GrBackendSurface.h"
#include "GrRenderTargetPriv.h"
@@ -312,4 +311,3 @@
}
#endif
-#endif