aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/DDLPromiseImageHelper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/DDLPromiseImageHelper.cpp')
-rw-r--r--tools/DDLPromiseImageHelper.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/DDLPromiseImageHelper.cpp b/tools/DDLPromiseImageHelper.cpp
index 586c2339a6..cc543f9d40 100644
--- a/tools/DDLPromiseImageHelper.cpp
+++ b/tools/DDLPromiseImageHelper.cpp
@@ -20,6 +20,10 @@ DDLPromiseImageHelper::PromiseImageCallbackContext::~PromiseImageCallbackContext
}
}
+const GrCaps* DDLPromiseImageHelper::PromiseImageCallbackContext::caps() const {
+ return fContext->contextPriv().caps();
+}
+
///////////////////////////////////////////////////////////////////////////////////////////////////
sk_sp<SkData> DDLPromiseImageHelper::deflateSKP(const SkPicture* inputPicture) {
@@ -104,7 +108,9 @@ sk_sp<SkImage> DDLPromiseImageHelper::PromiseImageCreator(const void* rawData,
}
SkASSERT(curImage.fIndex == *indexPtr);
- GrBackendFormat backendFormat = curImage.fCallbackContext->backendTexture().format();
+ const GrCaps* caps = curImage.fCallbackContext->caps();
+ const GrBackendTexture& backendTex = curImage.fCallbackContext->backendTexture();
+ GrBackendFormat backendFormat = caps->createFormatFromBackendTexture(backendTex);
// Each DDL recorder gets its own ref on the promise callback context for the
// promise images it creates.