Index: src/gpu/GrPath.cpp |
diff --git a/src/gpu/GrPath.cpp b/src/gpu/GrPath.cpp |
index eb956fbf658e77574dec939d65f198e61ce90f21..a069b0ad1ee8229a05b159c62f47308d65f810d7 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) { |