X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/4827f94e1725c34d4b19d79f4c74f16a0dc3b0cb..42b2a986d9d4b7040fb20c90ec0efeffb78e761a:/src/ftfont.c?ds=sidebyside diff --git a/src/ftfont.c b/src/ftfont.c index 131465b4f8..5545b4b4ae 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) {