From b86f24634c2ef495f62623c60d6ff0ac9c7fcbbf Mon Sep 17 00:00:00 2001 From: Adrian Johnson Date: Sun, 30 Apr 2023 17:15:45 +0930 Subject: [PATCH] Don't assume HAVE_FT_PALETTE_SELECT is defined when HAVE_FT_SVG_DOCUMENT is defined Fixes #777 --- src/cairo-ft-font.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c index 89af6193d..834e4ba31 100644 --- a/src/cairo-ft-font.c +++ b/src/cairo-ft-font.c @@ -2518,19 +2518,17 @@ _cairo_ft_glyph_fini (cairo_scaled_glyph_private_t *glyph_private, } -#ifdef HAVE_FT_PALETTE_SELECT static void _cairo_ft_scaled_glyph_set_palette (cairo_ft_scaled_font_t *scaled_font, FT_Face face, unsigned int *num_entries_ret, FT_Color **entries_ret) { - FT_Palette_Data palette_data; - unsigned int num_entries; - FT_Color *entries; + unsigned int num_entries = 0; + FT_Color *entries = NULL; - num_entries = 0; - entries = NULL; +#ifdef HAVE_FT_PALETTE_SELECT + FT_Palette_Data palette_data; if (FT_Palette_Data_Get (face, &palette_data) == 0 && palette_data.num_palettes > 0) { FT_UShort palette_index = CAIRO_COLOR_PALETTE_DEFAULT; @@ -2552,13 +2550,14 @@ _cairo_ft_scaled_glyph_set_palette (cairo_ft_scaled_font_t *scaled_font, } } } +#endif + if (num_entries_ret) *num_entries_ret = num_entries; if (entries_ret) *entries_ret = entries; } -#endif /* returns TRUE if foreground color used */ static cairo_bool_t @@ -2628,9 +2627,7 @@ _cairo_ft_scaled_glyph_init_surface (cairo_ft_scaled_font_t *scaled_font, scaled_glyph, face, foreground_color); -#ifdef HAVE_FT_PALETTE_SELECT _cairo_ft_scaled_glyph_set_palette (scaled_font, face, NULL, NULL); -#endif load_flags &= ~FT_LOAD_MONOCHROME; /* clear load target mode */