diff options
Diffstat (limited to 'src/utils')
-rw-r--r-- | src/utils/SkLua.cpp | 9 | ||||
-rw-r--r-- | src/utils/SkWhitelistTypefaces.cpp | 20 |
2 files changed, 14 insertions, 15 deletions
diff --git a/src/utils/SkLua.cpp b/src/utils/SkLua.cpp index 886f3d4ffd..4409e477e5 100644 --- a/src/utils/SkLua.cpp +++ b/src/utils/SkLua.cpp @@ -925,7 +925,7 @@ static int lpaint_getTypeface(lua_State* L) { } static int lpaint_setTypeface(lua_State* L) { - get_obj<SkPaint>(L, 1)->setTypeface(get_ref<SkTypeface>(L, 2)); + get_obj<SkPaint>(L, 1)->setTypeface(sk_ref_sp(get_ref<SkTypeface>(L, 2))); return 0; } @@ -2049,13 +2049,12 @@ static int lsk_newTypeface(lua_State* L) { } } - SkTypeface* face = SkTypeface::CreateFromName(name, - (SkTypeface::Style)style); + sk_sp<SkTypeface> face(SkTypeface::MakeFromName(name, (SkTypeface::Style)style)); // SkDebugf("---- name <%s> style=%d, face=%p ref=%d\n", name, style, face, face->getRefCnt()); if (nullptr == face) { - face = SkTypeface::RefDefault(); + face = SkTypeface::MakeDefault(); } - push_ref(L, face)->unref(); + push_ref(L, std::move(face)); return 1; } diff --git a/src/utils/SkWhitelistTypefaces.cpp b/src/utils/SkWhitelistTypefaces.cpp index 66d32188a0..3368178769 100644 --- a/src/utils/SkWhitelistTypefaces.cpp +++ b/src/utils/SkWhitelistTypefaces.cpp @@ -18,7 +18,7 @@ #define WHITELIST_DEBUG 0 extern void WhitelistSerializeTypeface(const SkTypeface*, SkWStream* ); -extern SkTypeface* WhitelistDeserializeTypeface(SkStream* ); +sk_sp<SkTypeface> WhitelistDeserializeTypeface(SkStream* ); extern bool CheckChecksums(); extern bool GenerateChecksums(); @@ -32,8 +32,8 @@ static bool font_name_is_local(const char* fontName, SkTypeface::Style style) { if (!strcmp(fontName, "DejaVu Sans")) { return true; } - SkTypeface* defaultFace = SkTypeface::CreateFromName(nullptr, style); - SkTypeface* foundFace = SkTypeface::CreateFromName(fontName, style); + sk_sp<SkTypeface> defaultFace(SkTypeface::MakeFromName(nullptr, style)); + sk_sp<SkTypeface> foundFace(SkTypeface::MakeFromName(fontName, style)); return defaultFace != foundFace; } @@ -183,7 +183,7 @@ void WhitelistSerializeTypeface(const SkTypeface* tf, SkWStream* wstream) { serialize_sub(fontName, tf->style(), wstream); } -SkTypeface* WhitelistDeserializeTypeface(SkStream* stream) { +sk_sp<SkTypeface> WhitelistDeserializeTypeface(SkStream* stream) { SkFontDescriptor desc; if (!SkFontDescriptor::Deserialize(stream, &desc)) { return nullptr; @@ -191,7 +191,7 @@ SkTypeface* WhitelistDeserializeTypeface(SkStream* stream) { SkFontData* data = desc.detachFontData(); if (data) { - SkTypeface* typeface = SkTypeface::CreateFromFontData(data); + sk_sp<SkTypeface> typeface(SkTypeface::MakeFromFontData(data)); if (typeface) { return typeface; } @@ -200,14 +200,14 @@ SkTypeface* WhitelistDeserializeTypeface(SkStream* stream) { if (!strncmp(SUBNAME_PREFIX, familyName, sizeof(SUBNAME_PREFIX) - 1)) { familyName += sizeof(SUBNAME_PREFIX) - 1; } - return SkTypeface::CreateFromName(familyName, desc.getStyle()); + return SkTypeface::MakeFromName(familyName, desc.getStyle()); } bool CheckChecksums() { for (int i = 0; i < whitelistCount; ++i) { const char* fontName = whitelist[i].fFontName; - SkTypeface* tf = SkTypeface::CreateFromName(fontName, SkTypeface::kNormal); - uint32_t checksum = compute_checksum(tf); + sk_sp<SkTypeface> tf(SkTypeface::MakeFromName(fontName, SkTypeface::kNormal)); + uint32_t checksum = compute_checksum(tf.get()); if (whitelist[i].fChecksum != checksum) { return false; } @@ -261,8 +261,8 @@ bool GenerateChecksums() { sk_fwrite(line.c_str(), line.size(), file); for (int i = 0; i < whitelistCount; ++i) { const char* fontName = whitelist[i].fFontName; - SkTypeface* tf = SkTypeface::CreateFromName(fontName, SkTypeface::kNormal); - uint32_t checksum = compute_checksum(tf); + sk_sp<SkTypeface> tf(SkTypeface::MakeFromName(fontName, SkTypeface::kNormal)); + uint32_t checksum = compute_checksum(tf.get()); line.printf(checksumEntry, fontName, checksum); sk_fwrite(line.c_str(), line.size(), file); } |