diff options
Diffstat (limited to 'src/gpu/GrPath.cpp')
-rw-r--r-- | src/gpu/GrPath.cpp | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/gpu/GrPath.cpp b/src/gpu/GrPath.cpp index eb956fbf65..a069b0ad1e 100644 --- a/src/gpu/GrPath.cpp +++ b/src/gpu/GrPath.cpp @@ -13,15 +13,11 @@ template<int NumBits> static uint64_t get_top_n_float_bits(float f) { return floatBits >> (32 - NumBits); } -GrResourceKey GrPath::ComputeKey(const SkPath& path, const SkStrokeRec& stroke) { - static const GrCacheID::Domain gPathDomain = GrCacheID::GenerateDomain(); - - GrCacheID::Key key; - uint64_t* keyData = key.fData64; - keyData[0] = path.getGenerationID(); - keyData[1] = ComputeStrokeKey(stroke); - - return GrResourceKey(GrCacheID(gPathDomain, key), 0); +void GrPath::ComputeKey(const SkPath& path, const SkStrokeRec& stroke, GrContentKey* key) { + static const GrContentKey::Domain kDomain = GrContentKey::GenerateDomain(); + GrContentKey::Builder builder(key, kDomain, 3); + *reinterpret_cast<uint64_t*>(&builder[0]) = ComputeStrokeKey(stroke); + builder[2] = path.getGenerationID(); } uint64_t GrPath::ComputeStrokeKey(const SkStrokeRec& stroke) { |