aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Morris2018-01-26 19:53:20 -0800
committerGlenn Morris2018-01-26 19:53:20 -0800
commit2ce56c51a83f6658cc6c79e4cc3716cfddbb03ff (patch)
treedf32ce46faa922198fb9f065c85d8e69f3e99506
parente3b46f0b9ea75d80d6cdd85e9f801304b285ee6d (diff)
downloademacs-2ce56c51a83f6658cc6c79e4cc3716cfddbb03ff.tar.gz
emacs-2ce56c51a83f6658cc6c79e4cc3716cfddbb03ff.zip
Workaround a libotf crash with Kannada font (bug#30193)
* configure.ac (HAVE_OTF_KANNADA_BUG): New define. * src/xfaces.c (syms_of_xfaces) <Vface_ignored_fonts>: Add problematic Kannada font if necessary.
-rw-r--r--configure.ac5
-rw-r--r--src/xfaces.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 1c4255da3f0..eb7e5ee2607 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3303,6 +3303,11 @@ if test "${HAVE_X11}" = "yes"; then
3303 AC_DEFINE(HAVE_OTF_GET_VARIATION_GLYPHS, 1, 3303 AC_DEFINE(HAVE_OTF_GET_VARIATION_GLYPHS, 1,
3304 [Define to 1 if libotf has OTF_get_variation_glyphs.]) 3304 [Define to 1 if libotf has OTF_get_variation_glyphs.])
3305 fi 3305 fi
3306 EMACS_CHECK_MODULES([OTFOK], [libotf >= 0.9.16])
3307 if test "$HAVE_OTFOK" != "yes"; then
3308 AC_DEFINE(HAVE_OTF_KANNADA_BUG, 1,
3309[Define to 1 if libotf is affected by https://debbugs.gnu.org/28110.])
3310 fi
3306 fi 3311 fi
3307 fi 3312 fi
3308 dnl FIXME should there be an error if HAVE_FREETYPE != yes? 3313 dnl FIXME should there be an error if HAVE_FREETYPE != yes?
diff --git a/src/xfaces.c b/src/xfaces.c
index 34797994c3c..77afee4587d 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -6526,7 +6526,12 @@ other font of the appropriate family and registry is available. */);
6526 doc: /* List of ignored fonts. 6526 doc: /* List of ignored fonts.
6527Each element is a regular expression that matches names of fonts to 6527Each element is a regular expression that matches names of fonts to
6528ignore. */); 6528ignore. */);
6529#ifdef HAVE_OTF_KANNADA_BUG
6530 /* https://debbugs.gnu.org/30193 */
6531 Vface_ignored_fonts = list1 (build_string ("Noto Serif Kannada"));
6532#else
6529 Vface_ignored_fonts = Qnil; 6533 Vface_ignored_fonts = Qnil;
6534#endif
6530 6535
6531 DEFVAR_LISP ("face-remapping-alist", Vface_remapping_alist, 6536 DEFVAR_LISP ("face-remapping-alist", Vface_remapping_alist,
6532 doc: /* Alist of face remappings. 6537 doc: /* Alist of face remappings.