Index: src/ports/SkFontHost_FreeType.cpp |
diff --git a/src/ports/SkFontHost_FreeType.cpp b/src/ports/SkFontHost_FreeType.cpp |
index f01c7d7cc5498ded51368439d11661cc0240c12f..e7cb6d2963684370a7569f1c3c18a7c98d0e1d27 100644 |
--- a/src/ports/SkFontHost_FreeType.cpp |
+++ b/src/ports/SkFontHost_FreeType.cpp |
@@ -361,7 +361,8 @@ static FT_Face ref_ft_face(const SkTypeface* typeface) { |
} |
// Caller must lock gFTMutex before calling this function. |
-static void unref_ft_face(FT_Face face) { |
+extern void unref_ft_face(FT_Face face); |
+void unref_ft_face(FT_Face face) { |
gFTMutex.assertHeld(); |
SkFaceRec* rec = gFaceRecHead; |
@@ -1284,7 +1285,6 @@ void SkScalerContext_FreeType::generateFontMetrics(SkPaint::FontMetrics* metrics |
SkAutoMutexAcquire ac(gFTMutex); |
if (this->setupSize()) { |
- ERROR: |
sk_bzero(metrics, sizeof(*metrics)); |
return; |
} |
@@ -1376,7 +1376,8 @@ void SkScalerContext_FreeType::generateFontMetrics(SkPaint::FontMetrics* metrics |
metrics->fFlags &= ~SkPaint::FontMetrics::kUnderlineThinknessIsValid_Flag; |
metrics->fFlags &= ~SkPaint::FontMetrics::kUnderlinePositionIsValid_Flag; |
} else { |
- goto ERROR; |
+ sk_bzero(metrics, sizeof(*metrics)); |
+ return; |
} |
// synthesize elements that were not provided by the os/2 table or format-specific metrics |