mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
style: Don't crash when finding an unexpected default font type.
For now just return sans-serif, though as the FIXME comment indicates we should probably just carry around the font-name instead. Bug: 1442195 Reviewed-by: xidorn MozReview-Commit-ID: CIPbV3R5Ul
This commit is contained in:
parent
1314f47da5
commit
dccb8263cc
1 changed files with 14 additions and 3 deletions
|
@ -2326,14 +2326,25 @@ fn static_assert() {
|
||||||
let shared_fontlist = unsafe { fontlist.mFontlist.mBasePtr.to_safe() };
|
let shared_fontlist = unsafe { fontlist.mFontlist.mBasePtr.to_safe() };
|
||||||
|
|
||||||
if shared_fontlist.mNames.is_empty() {
|
if shared_fontlist.mNames.is_empty() {
|
||||||
let default = match fontlist.mDefaultFontType {
|
let default = fontlist.mDefaultFontType;
|
||||||
|
let default = match default {
|
||||||
FontFamilyType::eFamily_serif => {
|
FontFamilyType::eFamily_serif => {
|
||||||
SingleFontFamily::Generic(atom!("serif"))
|
SingleFontFamily::Generic(atom!("serif"))
|
||||||
}
|
}
|
||||||
FontFamilyType::eFamily_sans_serif => {
|
_ => {
|
||||||
|
// This can break with some combinations of user prefs, see
|
||||||
|
// bug 1442195 for example. It doesn't really matter in this
|
||||||
|
// case...
|
||||||
|
//
|
||||||
|
// FIXME(emilio): Probably should be storing the whole
|
||||||
|
// default font name instead though.
|
||||||
|
debug_assert_eq!(
|
||||||
|
default,
|
||||||
|
FontFamilyType::eFamily_sans_serif,
|
||||||
|
"Default generic should be serif or sans-serif"
|
||||||
|
);
|
||||||
SingleFontFamily::Generic(atom!("sans-serif"))
|
SingleFontFamily::Generic(atom!("sans-serif"))
|
||||||
}
|
}
|
||||||
_ => panic!("Default generic must be serif or sans-serif"),
|
|
||||||
};
|
};
|
||||||
FontFamily(FontFamilyList::new(Box::new([default])))
|
FontFamily(FontFamilyList::new(Box::new([default])))
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue