summaryrefslogtreecommitdiff
path: root/pango
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2022-09-27 00:54:57 +0000
committerMatthias Clasen <mclasen@redhat.com>2022-09-27 00:54:57 +0000
commit37f28be693851c369fee695e64741e056394fa4a (patch)
tree4d473b24ef7c97d57ff89f9751c58baf30ff6696 /pango
parentf2add41dadacd7cb2df804a2e7faa670c8db69ee (diff)
parente27ac590d44e87adac235c1b63429dc5f832f782 (diff)
downloadpango-37f28be693851c369fee695e64741e056394fa4a.tar.gz
Merge branch 'no-font-fixes' into 'main'
fonts: Handle lack of fonts Closes #701 See merge request GNOME/pango!640
Diffstat (limited to 'pango')
-rw-r--r--pango/fonts.c6
-rw-r--r--pango/serializer.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/pango/fonts.c b/pango/fonts.c
index e7bd4780..47671424 100644
--- a/pango/fonts.c
+++ b/pango/fonts.c
@@ -2871,5 +2871,11 @@ pango_font_get_scale_factors (PangoFont *font,
double *x_scale,
double *y_scale)
{
+ if (G_UNLIKELY (!font))
+ {
+ *x_scale = *y_scale = .1;
+ return;
+ }
+
PANGO_FONT_GET_CLASS_PRIVATE (font)->get_scale_factors (font, x_scale, y_scale);
}
diff --git a/pango/serializer.c b/pango/serializer.c
index 2dab93b4..e3a22800 100644
--- a/pango/serializer.c
+++ b/pango/serializer.c
@@ -653,7 +653,8 @@ add_run (GtkJsonPrinter *printer,
gtk_json_printer_add_string (printer, "language", pango_language_to_string (run->item->analysis.language));
gtk_json_printer_add_string (printer, "script", get_script_name (run->item->analysis.script));
- add_font (printer, "font", run->item->analysis.font);
+ if (run->item->analysis.font)
+ add_font (printer, "font", run->item->analysis.font);
gtk_json_printer_add_integer (printer, "flags", run->item->analysis.flags & ANALYSIS_FLAGS);