From 238069b3f58d3b20f710f77a64632470a3bf256a Mon Sep 17 00:00:00 2001 From: Brian Salomon Date: Wed, 11 Jul 2018 15:58:57 -0400 Subject: Reland "Make GPU cache invalidation SkMessageBus messages go to one GrContext." This is a reland of f4c5bb9aba485aa47c27b15905d81992b7cf4707 Original change's description: > Make GPU cache invalidation SkMessageBus messages go to one GrContext. > > Makes it so the template param to SkMessageBus must implement: > bool shouldSend(uint32_t inboxID) const > > Updates all GPU backend message types to only go to the GrContext that > is adding a cache entry. > > Bug: skia: > Change-Id: I3e8a4eb90654b7b8ac57cac9fb508c0ef1d51058 > Reviewed-on: https://skia-review.googlesource.com/140220 > Reviewed-by: Robert Phillips > Reviewed-by: Jim Van Verth Bug: skia: Change-Id: I8402bfe3ed0170c99936d47050458817030b473b Reviewed-on: https://skia-review.googlesource.com/140801 Reviewed-by: Brian Salomon Commit-Queue: Brian Salomon --- tests/ResourceCacheTest.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests/ResourceCacheTest.cpp') diff --git a/tests/ResourceCacheTest.cpp b/tests/ResourceCacheTest.cpp index dceb3e74ed..5b7a67a648 100644 --- a/tests/ResourceCacheTest.cpp +++ b/tests/ResourceCacheTest.cpp @@ -1003,8 +1003,8 @@ static void test_purge_invalidated(skiatest::Reporter* reporter) { typedef SkMessageBus Bus; // Invalidate two of the three, they should be purged and no longer accessible via their keys. - Bus::Post(Msg(key1)); - Bus::Post(Msg(key2)); + Bus::Post(Msg(key1, context->uniqueID())); + Bus::Post(Msg(key2, context->uniqueID())); cache->purgeAsNeeded(); // a should be deleted now, but we still have a ref on b. REPORTER_ASSERT(reporter, !cache->hasUniqueKey(key1)); @@ -1013,7 +1013,7 @@ static void test_purge_invalidated(skiatest::Reporter* reporter) { REPORTER_ASSERT(reporter, cache->hasUniqueKey(key3)); // Invalidate the third. - Bus::Post(Msg(key3)); + Bus::Post(Msg(key3, context->uniqueID())); cache->purgeAsNeeded(); // we still have a ref on b, c should be recycled as scratch. REPORTER_ASSERT(reporter, 2 == TestResource::NumAlive()); -- cgit v1.2.3