Index: src/core/SkScalerContext.cpp |
diff --git a/src/core/SkScalerContext.cpp b/src/core/SkScalerContext.cpp |
index db3c0fb2f57e04c4aa490fb95638fd393d4b0d42..11208fec599bad1ca0dfeef7f3bab9c23f00dc96 100644 |
--- a/src/core/SkScalerContext.cpp |
+++ b/src/core/SkScalerContext.cpp |
@@ -22,6 +22,10 @@ |
#include "SkRasterClip.h" |
#include "SkStroke.h" |
#include "SkThread.h" |
+ |
+#ifdef SK_BUILD_FOR_ANDROID |
+ #include "SkTypeface_android.h" |
+#endif |
#define ComputeBWRowBytes(width) (((unsigned)(width) + 7) >> 3) |
@@ -107,6 +111,15 @@ |
desc->findEntry(kPathEffect_SkDescriptorTag, NULL), |
desc->findEntry(kMaskFilter_SkDescriptorTag, NULL)); |
#endif |
+#ifdef SK_BUILD_FOR_ANDROID |
+ uint32_t len; |
+ const void* data = desc->findEntry(kAndroidOpts_SkDescriptorTag, &len); |
+ if (data) { |
+ SkReadBuffer buffer(data, len); |
+ fPaintOptionsAndroid.unflatten(buffer); |
+ SkASSERT(buffer.offset() == buffer.size()); |
+ } |
+#endif |
} |
SkScalerContext::~SkScalerContext() { |