Index: src/ports/SkFontHost_win.cpp |
diff --git a/src/ports/SkFontHost_win.cpp b/src/ports/SkFontHost_win.cpp |
index db90915acae6648c938dda93c09650146c33f5b5..1082f6ca51ff3be6bb4ff2c2075f0cb1152993cb 100644 |
--- a/src/ports/SkFontHost_win.cpp |
+++ b/src/ports/SkFontHost_win.cpp |
@@ -1840,12 +1840,15 @@ SkAdvancedTypefaceMetrics* LogFontTypeface::onGetAdvancedTypefaceMetrics( |
finishRange(info->fGlyphWidths.get(), 0, |
SkAdvancedTypefaceMetrics::WidthRange::kDefault); |
} else { |
+ std::function<bool(int gId, int16_t* data)> getWidthAdvanceFn = |
+ [hdc](int gId, int16_t* advance) { |
+ return getWidthAdvance(hdc, gId, advance); |
+ }; |
info->fGlyphWidths.reset( |
- getAdvanceData(hdc, |
- glyphCount, |
+ getAdvanceData(glyphCount, |
glyphIDs, |
glyphIDsCount, |
- &getWidthAdvance)); |
+ getWidthAdvanceFn)); |
} |
} |