diff options
Diffstat (limited to 'src/ftfont.c')
-rw-r--r-- | src/ftfont.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/ftfont.c b/src/ftfont.c index 3c45eb2f72f..3c0b09b7f74 100644 --- a/src/ftfont.c +++ b/src/ftfont.c @@ -1033,13 +1033,13 @@ ftfont_list (Lisp_Object frame, Lisp_Object spec) #endif /* HAVE_LIBOTF */ if (VECTORP (chars)) { - int j; + ptrdiff_t j; if (FcPatternGetCharSet (fontset->fonts[i], FC_CHARSET, 0, &charset) != FcResultMatch) continue; for (j = 0; j < ASIZE (chars); j++) - if (NATNUMP (AREF (chars, j)) + if (TYPE_RANGED_INTEGERP (FcChar32, AREF (chars, j)) && FcCharSetHasChar (charset, XFASTINT (AREF (chars, j)))) break; if (j == ASIZE (chars)) @@ -2394,8 +2394,8 @@ static Lisp_Object ftfont_shape_by_flt (Lisp_Object lgstring, struct font *font, FT_Face ft_face, OTF *otf, FT_Matrix *matrix) { - EMACS_INT len = LGSTRING_GLYPH_LEN (lgstring); - EMACS_INT i; + ptrdiff_t len = LGSTRING_GLYPH_LEN (lgstring); + ptrdiff_t i; struct MFLTFontFT flt_font_ft; MFLT *flt = NULL; int with_variation_selector = 0; @@ -2423,7 +2423,7 @@ ftfont_shape_by_flt (Lisp_Object lgstring, struct font *font, } len = i; - lint_assume (len <= TYPE_MAXIMUM (EMACS_INT) - 2); + lint_assume (len <= STRING_BYTES_BOUND); if (with_variation_selector) { |