diff options
author | Herb Derby <herb@google.com> | 2018-03-05 14:23:47 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-03-07 16:24:20 +0000 |
commit | 61d56b92a4076f8afd644d015913641d691e39c8 (patch) | |
tree | 2d01f6a6eac0a678f99863ba3354e5bbf14ce584 /src/core/SkTextToPathIter.h | |
parent | 78cb579f33943421afc8423a39867fcfd69fed44 (diff) |
Remove attach and detach glyph cache.
BUG=skia:7515
Change-Id: Ib978e3cf4cfffdefe6453feb520e5e73684abf2e
Reviewed-on: https://skia-review.googlesource.com/112560
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Diffstat (limited to 'src/core/SkTextToPathIter.h')
-rw-r--r-- | src/core/SkTextToPathIter.h | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/core/SkTextToPathIter.h b/src/core/SkTextToPathIter.h index 6de12a84ce..8bcbc21b4d 100644 --- a/src/core/SkTextToPathIter.h +++ b/src/core/SkTextToPathIter.h @@ -9,22 +9,21 @@ #define SkTextToPathIter_DEFINED #include "SkAutoKern.h" +#include "SkGlyphCache.h" #include "SkPaint.h" -class SkGlyphCache; class SkTextBaseIter { protected: SkTextBaseIter(const char text[], size_t length, const SkPaint& paint, bool applyStrokeAndPathEffects); - ~SkTextBaseIter(); - - SkGlyphCache* fCache; - SkPaint fPaint; - SkScalar fScale; - SkScalar fPrevAdvance; - const char* fText; - const char* fStop; + + SkExclusiveStrikePtr fCache; + SkPaint fPaint; + SkScalar fScale; + SkScalar fPrevAdvance; + const char* fText; + const char* fStop; SkPaint::GlyphCacheProc fGlyphCacheProc; SkScalar fXPos; // accumulated xpos, returned in next @@ -74,7 +73,7 @@ public: if (TextType::kPosText == fTextType && fPaint.getTextAlign() != SkPaint::kLeft_Align) { // need to measure first const char* text = fText; - const SkGlyph& glyph = fGlyphCacheProc(fCache, &text); + const SkGlyph& glyph = fGlyphCacheProc(fCache.get(), &text); SkScalar width = (&glyph.fAdvanceX)[0] * fScale; if (fPaint.getTextAlign() == SkPaint::kCenter_Align) { width = SkScalarHalf(width); |