aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports/SkFontHost_win.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2017-09-25 20:00:31 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-09-25 20:00:41 +0000
commitf40ae1a4b5365620463bd63b5140bd3fc78894a1 (patch)
tree3070160f98d80ea9e2ab53eb8b06035d70582701 /src/ports/SkFontHost_win.cpp
parenta3ab53b93a40185d7f29409264f91b835ae8929e (diff)
Revert "migrate to sk_sp for SkFontMgr API"
This reverts commit 4bf296be2821d2bdd0afabae9fdfe18e7e9b59cb. Reason for revert: need guard for flutter Original change's description: > migrate to sk_sp for SkFontMgr API > > Bug: skia: > Change-Id: I1bf2a13537f67938cdc9956080065d10ea0bd1d8 > Reviewed-on: https://skia-review.googlesource.com/48740 > Commit-Queue: Ben Wagner <bungeman@google.com> > Reviewed-by: Ben Wagner <bungeman@google.com> TBR=bungeman@google.com,reed@google.com Change-Id: Ib0b2d00fcbcdb6131444f94d1046df6dae24f551 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/50940 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src/ports/SkFontHost_win.cpp')
-rw-r--r--src/ports/SkFontHost_win.cpp26
1 files changed, 12 insertions, 14 deletions
diff --git a/src/ports/SkFontHost_win.cpp b/src/ports/SkFontHost_win.cpp
index 5cd02a4f73..42785e9f1b 100644
--- a/src/ports/SkFontHost_win.cpp
+++ b/src/ports/SkFontHost_win.cpp
@@ -1894,7 +1894,7 @@ static HANDLE activate_font(SkData* fontData) {
}
// Does not affect ownership of stream.
-static sk_sp<SkTypeface> create_from_stream(std::unique_ptr<SkStreamAsset> stream) {
+static SkTypeface* create_from_stream(SkStreamAsset* stream) {
// Create a unique and unpredictable font name.
// Avoids collisions and access from CSS.
char familyName[BASE64_GUID_ID_LEN];
@@ -1904,7 +1904,7 @@ static sk_sp<SkTypeface> create_from_stream(std::unique_ptr<SkStreamAsset> strea
}
// Change the name of the font.
- sk_sp<SkData> rewrittenFontData(SkOTUtils::RenameFont(stream.get(), familyName, familyNameSize-1));
+ sk_sp<SkData> rewrittenFontData(SkOTUtils::RenameFont(stream, familyName, familyNameSize-1));
if (nullptr == rewrittenFontData.get()) {
return nullptr;
}
@@ -1919,7 +1919,7 @@ static sk_sp<SkTypeface> create_from_stream(std::unique_ptr<SkStreamAsset> strea
LOGFONT lf;
logfont_for_name(familyName, &lf);
- return sk_sp<SkTypeface>(SkCreateFontMemResourceTypefaceFromLOGFONT(lf, fontReference));
+ return SkCreateFontMemResourceTypefaceFromLOGFONT(lf, fontReference);
}
SkStreamAsset* LogFontTypeface::onOpenStream(int* ttcIndex) const {
@@ -2449,27 +2449,25 @@ protected:
return this->matchFamilyStyle(familyName.c_str(), fontstyle);
}
- sk_sp<SkTypeface> onMakeFromStreamIndex(std::unique_ptr<SkStreamAsset> stream,
- int ttcIndex) const override {
+ SkTypeface* onCreateFromStream(SkStreamAsset* bareStream, int ttcIndex) const override {
+ std::unique_ptr<SkStreamAsset> stream(bareStream);
if (ttcIndex != 0) {
return nullptr;
}
- return create_from_stream(std::move(stream));
+ return create_from_stream(stream.get());
}
- sk_sp<SkTypeface> onMakeFromData(sk_sp<SkData> data, int ttcIndex) const override {
+ SkTypeface* onCreateFromData(SkData* data, int ttcIndex) const override {
// could be in base impl
- return this->makeFromStream(std::unique_ptr<SkStreamAsset>(new SkMemoryStream(std::move(data))),
- ttcIndex);
+ return this->createFromStream(new SkMemoryStream(sk_ref_sp(data)), ttcIndex);
}
- sk_sp<SkTypeface> onMakeFromFile(const char path[], int ttcIndex) const override {
+ SkTypeface* onCreateFromFile(const char path[], int ttcIndex) const override {
// could be in base impl
- auto stream = SkStream::MakeFromFile(path);
- return stream ? this->makeFromStream(std::move(stream), ttcIndex) : nullptr;
+ return this->createFromStream(SkStream::MakeFromFile(path).release(), ttcIndex);
}
- sk_sp<SkTypeface> onLegacyMakeTypeface(const char familyName[], SkFontStyle style) const override {
+ SkTypeface* onLegacyCreateTypeface(const char familyName[], SkFontStyle style) const override {
LOGFONT lf;
if (nullptr == familyName) {
lf = get_default_font();
@@ -2479,7 +2477,7 @@ protected:
lf.lfWeight = style.weight();
lf.lfItalic = style.slant() == SkFontStyle::kUpright_Slant ? FALSE : TRUE;
- return sk_sp<SkTypeface>(SkCreateTypefaceFromLOGFONT(lf));
+ return SkCreateTypefaceFromLOGFONT(lf);
}
private: