aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/SurfaceTest.cpp
diff options
context:
space:
mode:
authorGravatar Yuqian Li <liyuqian@google.com>2017-03-16 15:04:53 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-03-16 15:05:04 +0000
commit9e9188f84b15a25e27f63d5f8de3ccd393d9a173 (patch)
treec2b0e775951a9cd0599bbd00f9ae062ca55212d1 /tests/SurfaceTest.cpp
parenta6ae1f7cda072ff814a838e2d9013a017552cc35 (diff)
Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5. Reason for revert: Android build failed as shown below. frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1 mImage = surface->makeImageSnapshot(SkBudgeted::kNo); Original change's description: > Remove budgeted parameter from SkSurface::makeImageSnapshot > > This unused feature complicates MDB. > > Chrome compiles locally for me with this CL. > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72 > Reviewed-on: https://skia-review.googlesource.com/9734 > 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: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e Reviewed-on: https://skia-review.googlesource.com/9788 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
Diffstat (limited to 'tests/SurfaceTest.cpp')
-rw-r--r--tests/SurfaceTest.cpp39
1 files changed, 21 insertions, 18 deletions
diff --git a/tests/SurfaceTest.cpp b/tests/SurfaceTest.cpp
index 6264196640..b85ac81788 100644
--- a/tests/SurfaceTest.cpp
+++ b/tests/SurfaceTest.cpp
@@ -460,24 +460,27 @@ static SkBudgeted is_budgeted(const sk_sp<SkImage> image) {
DEF_GPUTEST_FOR_RENDERING_CONTEXTS(SurfaceBudget, reporter, ctxInfo) {
SkImageInfo info = SkImageInfo::MakeN32Premul(8,8);
- for (auto budgeted : { SkBudgeted::kNo, SkBudgeted::kYes }) {
- auto surface(SkSurface::MakeRenderTarget(ctxInfo.grContext(), budgeted, info));
- SkASSERT(surface);
- REPORTER_ASSERT(reporter, budgeted == is_budgeted(surface));
-
- sk_sp<SkImage> image(surface->makeImageSnapshot());
-
- // Initially the image shares a texture with the surface, and the
- // the budgets should always match.
- REPORTER_ASSERT(reporter, budgeted == is_budgeted(surface));
- REPORTER_ASSERT(reporter, budgeted == is_budgeted(image));
-
- // Now trigger copy-on-write
- surface->getCanvas()->clear(SK_ColorBLUE);
-
- // They don't share a texture anymore but the budgets should still match.
- REPORTER_ASSERT(reporter, budgeted == is_budgeted(surface));
- REPORTER_ASSERT(reporter, budgeted == is_budgeted(image));
+ for (auto sbudgeted : { SkBudgeted::kNo, SkBudgeted::kYes }) {
+ for (auto ibudgeted : { SkBudgeted::kNo, SkBudgeted::kYes }) {
+ auto surface(SkSurface::MakeRenderTarget(ctxInfo.grContext(), sbudgeted, info));
+ SkASSERT(surface);
+ REPORTER_ASSERT(reporter, sbudgeted == is_budgeted(surface));
+
+ sk_sp<SkImage> image(surface->makeImageSnapshot(ibudgeted));
+
+ // Initially the image shares a texture with the surface, and the surface decides
+ // whether it is budgeted or not.
+ REPORTER_ASSERT(reporter, sbudgeted == is_budgeted(surface));
+ REPORTER_ASSERT(reporter, sbudgeted == is_budgeted(image));
+
+ // Now trigger copy-on-write
+ surface->getCanvas()->clear(SK_ColorBLUE);
+
+ // They don't share a texture anymore. They should each have made their own budget
+ // decision.
+ REPORTER_ASSERT(reporter, sbudgeted == is_budgeted(surface));
+ REPORTER_ASSERT(reporter, ibudgeted == is_budgeted(image));
+ }
}
}
#endif