diff options
Diffstat (limited to 'src/svg')
-rw-r--r-- | src/svg/SkSVGDevice.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/svg/SkSVGDevice.cpp b/src/svg/SkSVGDevice.cpp index 261ad22d6d..360bb07d44 100644 --- a/src/svg/SkSVGDevice.cpp +++ b/src/svg/SkSVGDevice.cpp @@ -563,14 +563,15 @@ void SkSVGDevice::AutoElement::addTextAttributes(const SkPaint& paint) { sk_sp<SkTypeface::LocalizedStrings> familyNameIter(tface->createFamilyNameIterator()); SkTypeface::LocalizedString familyString; - while (familyNameIter->next(&familyString)) { - if (familySet.contains(familyString.fString)) { - continue; + if (familyNameIter) { + while (familyNameIter->next(&familyString)) { + if (familySet.contains(familyString.fString)) { + continue; + } + familySet.add(familyString.fString); + familyName.appendf((familyName.isEmpty() ? "%s" : ", %s"), familyString.fString.c_str()); } - familySet.add(familyString.fString); - familyName.appendf((familyName.isEmpty() ? "%s" : ", %s"), familyString.fString.c_str()); } - if (!familyName.isEmpty()) { this->addAttribute("font-family", familyName); } |