Commit 4be56840 authored by Matthias Clasen's avatar Matthias Clasen
Browse files

test-layout: Use an fc fontmap

Our new, more precise font checks rely on
data from fontconfig to identify fonts
uniquely. So make sure that we use a custom
fc fontmap, if we have one.
parent 05be686a
Pipeline #336540 failed with stages
in 6 minutes and 53 seconds
......@@ -29,6 +29,7 @@
#include "config.h"
#include <pango/pangocairo.h>
#include <pango/pangocairo-fc.h>
#include <pango/pangofc-fontmap.h>
#include "test-common.h"
......@@ -46,6 +47,12 @@ test_layout (gconstpointer d)
PangoContext *context;
PangoLayout *layout;
if (!PANGO_IS_FC_FONT_MAP (pango_cairo_font_map_get_default ()))
g_test_skip ("Not an fc fontmap. Skipping...");
char *old_locale = g_strdup (setlocale (LC_ALL, NULL));
setlocale (LC_ALL, "en_US.UTF-8");
if (strstr (setlocale (LC_ALL, NULL), "en_US") == NULL)
......@@ -104,6 +111,8 @@ install_fonts (const char *dir)
PangoFontMap *map;
char *conf;
map = g_object_new (PANGO_TYPE_CAIRO_FC_FONT_MAP, NULL);
config = FcConfigCreate ();
conf = g_strdup_printf ("<?xml version=\"1.0\"?>\n"
......@@ -118,9 +127,12 @@ install_fonts (const char *dir)
g_free (conf);
FcConfigAppFontAddDir (config, (const FcChar8 *) dir);
map = pango_cairo_font_map_get_default ();
pango_fc_font_map_set_config (PANGO_FC_FONT_MAP (map), config);
FcConfigDestroy (config);
pango_cairo_font_map_set_default (PANGO_CAIRO_FONT_MAP (map));
g_object_unref (map);
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment