| Index: tools/sk_tool_utils_font.cpp
 | 
| diff --git a/tools/sk_tool_utils_font.cpp b/tools/sk_tool_utils_font.cpp
 | 
| index 7b95fb04e07dea734d39fb65e997bac378e60e3d..06008c6243c9127c8af01613f56a397c0feb02f6 100644
 | 
| --- a/tools/sk_tool_utils_font.cpp
 | 
| +++ b/tools/sk_tool_utils_font.cpp
 | 
| @@ -68,113 +68,4 @@ SkTypeface* create_font(const char* name, SkTypeface::Style style) {
 | 
|      return SkNEW_ARGS(SkTestTypeface, (font, SkFontStyle(style)));
 | 
|  }
 | 
|  
 | 
| -
 | 
| -SkTypeface* resource_font(const char* name, SkTypeface::Style style) {
 | 
| -    const char* file = NULL;
 | 
| -    if (name) {
 | 
| -        for (int index = 0; index < gSubFontsCount; ++index) {
 | 
| -            const SubFont& sub = gSubFonts[index];
 | 
| -            if (!strcmp(name, sub.fName) && sub.fStyle == style) {
 | 
| -                file = sub.fFile;
 | 
| -                break;
 | 
| -            }
 | 
| -        }
 | 
| -        if (!file) {
 | 
| -            return SkTypeface::CreateFromName(name, style);
 | 
| -        }
 | 
| -    } else {
 | 
| -        file = gSubFonts[gDefaultFontIndex].fFile;
 | 
| -    }
 | 
| -    SkString filepath(GetResourcePath(file));
 | 
| -    if (sk_exists(filepath.c_str())) {
 | 
| -        return SkTypeface::CreateFromFile(filepath.c_str());
 | 
| -    }
 | 
| -    return SkTypeface::CreateFromName(name, style);
 | 
| -}
 | 
| -
 | 
| -#ifdef SK_DEBUG
 | 
| -#include <stdio.h>
 | 
| -
 | 
| -char const * const gStyleName[] = {
 | 
| -    "",
 | 
| -    "_Bold",
 | 
| -    "_Italic",
 | 
| -    "_BoldItalic",
 | 
| -};
 | 
| -
 | 
| -static SkString strip_spaces(const char* str) {
 | 
| -    SkString result;
 | 
| -    int count = (int) strlen(str);
 | 
| -    for (int index = 0; index < count; ++index) {
 | 
| -        char c = str[index];
 | 
| -        if (c != ' ' && c != '-') {
 | 
| -            result += c;
 | 
| -        }
 | 
| -    }
 | 
| -    return result;
 | 
| -}
 | 
| -
 | 
| -const char gHeader[] =
 | 
| -"/*\n"
 | 
| -" * Copyright 2014 Google Inc.\n"
 | 
| -" *\n"
 | 
| -" * Use of this source code is governed by a BSD-style license that can be\n"
 | 
| -" * found in the LICENSE file.\n"
 | 
| -" */\n"
 | 
| -"\n"
 | 
| -"// Auto-generated by ";
 | 
| -
 | 
| -static FILE* font_header() {
 | 
| -    SkString pathStr(GetResourcePath());
 | 
| -    pathStr = SkOSPath::Join(pathStr.c_str(), "..");
 | 
| -    pathStr = SkOSPath::Join(pathStr.c_str(), "tools");
 | 
| -    pathStr = SkOSPath::Join(pathStr.c_str(), "test_font_data_chars.cpp");
 | 
| -    FILE* out = fopen(pathStr.c_str(), "w");
 | 
| -    fprintf(out, "%s%s\n\n", gHeader, SkOSPath::Basename(__FILE__).c_str());
 | 
| -    return out;
 | 
| -}
 | 
| -
 | 
| -void report_used_chars() {
 | 
| -    FILE* out = font_header();
 | 
| -    for (int index = 0; index < gTestFontsCount; ++index) {
 | 
| -        SkTestFontData& fontData = gTestFonts[index];
 | 
| -        SkTestFont* font = fontData.fFontCache;
 | 
| -        if (!font) {
 | 
| -            continue;
 | 
| -        }
 | 
| -        SkString name(strip_spaces(font->debugFontName()));
 | 
| -        fprintf(out, "const char g%s%s[] =\n", name.c_str(), gStyleName[font->fDebugStyle]);
 | 
| -        SkString used("    \"");
 | 
| -        for (int c = ' '; c <= '~'; ++c) {
 | 
| -            int bitOffset = c - ' ';
 | 
| -            if (font->fDebugBits[bitOffset >> 3] & (1 << (bitOffset & 7))) {
 | 
| -                if (c == '"' || c == '\\') {
 | 
| -                    used += '\\';
 | 
| -                }
 | 
| -                used += c;
 | 
| -            }
 | 
| -        }
 | 
| -        if (used.size() > 1) {
 | 
| -            fprintf(out, "%s\"", used.c_str());
 | 
| -        }
 | 
| -        int oIndex = 0;
 | 
| -        while (font->fDebugOverage[oIndex]) {
 | 
| -            uint16_t uni = font->fDebugOverage[oIndex];
 | 
| -            size_t byteCount = SkUTF16_ToUTF8(&uni, 1, NULL);
 | 
| -            SkAutoSTMalloc<10, char> utf8(byteCount);
 | 
| -            SkUTF16_ToUTF8(&uni, 1, utf8);
 | 
| -            for (unsigned byteIndex = 0; byteIndex < byteCount; ++byteIndex) {
 | 
| -                char unibyte = utf8[byteIndex];
 | 
| -                fprintf(out, " \"\\x%02X\"", (unsigned char) unibyte);
 | 
| -            }
 | 
| -            if (++oIndex >= (int) sizeof(font->fDebugOverage)) {
 | 
| -                break;
 | 
| -            }
 | 
| -        }
 | 
| -       fprintf(out, ";\n");
 | 
| -    }
 | 
| -    fclose(out);
 | 
| -}
 | 
| -#endif
 | 
| -
 | 
|  }
 | 
| 
 |