]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix font options compilation with gsettings disabled
authorPieter van Prooijen <pieter.van.prooijen@teloden.nl>
Mon, 16 May 2022 13:20:27 +0000 (15:20 +0200)
committerPo Lu <luangruo@yahoo.com>
Tue, 17 May 2022 10:15:18 +0000 (18:15 +0800)
* src/xsettings.c (xsettings_get_font_options): Return a font_options
even if gsettings is not enabled.

src/xsettings.c

index 2e33ef958ac865fdf4ebe36cb0e83eaddbc4d7f7..45341d8ebd5b00208ad369e810682faacc0fb872 100644 (file)
@@ -206,6 +206,11 @@ struct xsettings
   unsigned seen;
 };
 
+#ifdef HAVE_PGTK
+/* The cairo font_options as obtained using gsettings.  */
+static cairo_font_options_t *font_options;
+#endif
+
 #ifdef HAVE_GSETTINGS
 #define GSETTINGS_SCHEMA         "org.gnome.desktop.interface"
 #define GSETTINGS_TOOL_BAR_STYLE "toolbar-style"
@@ -225,11 +230,6 @@ struct xsettings
 
 static GSettings *gsettings_client;
 
-#ifdef HAVE_PGTK
-
-/* The cairo font_options as obtained using gsettings.  */
-static cairo_font_options_t *font_options;
-
 static bool
 xg_settings_key_valid_p (GSettings *settings, const char *key)
 {
@@ -253,6 +253,7 @@ xg_settings_key_valid_p (GSettings *settings, const char *key)
 #endif
 }
 
+#ifdef HAVE_PGTK
 /* Store an event for re-rendering of the fonts.  */
 static void
 store_font_options_changed (void)
@@ -1206,7 +1207,11 @@ xsettings_get_system_normal_font (void)
 cairo_font_options_t *
 xsettings_get_font_options (void)
 {
-  return cairo_font_options_copy (font_options);
+  if (font_options != NULL)
+    return cairo_font_options_copy (font_options);
+  else
+    /* GSettings is not configured.  */
+    return cairo_font_options_create ();
 }
 #endif