aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools
diff options
context:
space:
mode:
authorGravatar caryclark <caryclark@google.com>2015-07-23 11:52:01 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-07-23 11:52:01 -0700
commit3b0f98ee17e02aae4e1e1e9fa65d3c56104dd9c7 (patch)
tree828ebb18e845e5c5f1913e2b866ebe7b09318291 /tools
parent494aa593c59d3f426036f87ef1fab1ea158c469f (diff)
fix typeface leak
TBR=bungeman@google.com Review URL: https://codereview.chromium.org/1239303003
Diffstat (limited to 'tools')
-rw-r--r--tools/sk_tool_utils.cpp11
-rw-r--r--tools/sk_tool_utils.h2
2 files changed, 8 insertions, 5 deletions
diff --git a/tools/sk_tool_utils.cpp b/tools/sk_tool_utils.cpp
index 03d02de924..9ab86edf2f 100644
--- a/tools/sk_tool_utils.cpp
+++ b/tools/sk_tool_utils.cpp
@@ -32,14 +32,17 @@ const char* platform_os_emoji() {
return "";
}
-SkTypeface* emoji_typeface() {
+void emoji_typeface(SkAutoTUnref<SkTypeface>* tf) {
if (!strcmp(sk_tool_utils::platform_os_emoji(), "CBDT")) {
- return GetResourceAsTypeface("/fonts/Funkster.ttf");
+ tf->reset(GetResourceAsTypeface("/fonts/Funkster.ttf"));
+ return;
}
if (!strcmp(sk_tool_utils::platform_os_emoji(), "SBIX")) {
- return SkTypeface::CreateFromName("Apple Color Emoji", SkTypeface::kNormal);
+ tf->reset(SkTypeface::CreateFromName("Apple Color Emoji", SkTypeface::kNormal));
+ return;
}
- return NULL;
+ tf->reset(NULL);
+ return;
}
const char* emoji_sample_text() {
diff --git a/tools/sk_tool_utils.h b/tools/sk_tool_utils.h
index 921ca2ad39..2bef19d833 100644
--- a/tools/sk_tool_utils.h
+++ b/tools/sk_tool_utils.h
@@ -25,7 +25,7 @@ namespace sk_tool_utils {
const char* colortype_name(SkColorType);
SkColor color_to_565(SkColor color);
- SkTypeface* emoji_typeface();
+ void emoji_typeface(SkAutoTUnref<SkTypeface>* );
const char* emoji_sample_text();
const char* platform_os_emoji();
const char* platform_os_name();