[re-send; looks like the list silently drops mail from non-subscribers] Hello, Emacs is crashing[1] when Inconsolata-VariableFont_wdth,wght.ttf[2] is installed and I'm trying to understand why. This is what I know. We call FcFontList to obtain an FcFontSet, and then for each FcPattern in that list we produce a Lisp vector containing the attributes of the font, and that goes into the Emacs-specific font selection code. In particular, in order to populate the weight field in that vector, we call FcPatternGetInteger on the pattern, passing FC_WEIGHT as the second argument. For most fonts this yields an integer representing the weight. When Inconsolata-VariableFont_wdth,wght.ttf is installed, the FcFontSet contains multiple FcPatterns corresponding to entries in that file. For most of these, FcPatternGetInteger with FC_WEIGHT yields an integer. But for some of them, it does not; FcPatternGetInteger (and FcPatternGetDouble) do not return the success value FcResultMatch. Emacs's font code assumes that there is a weight associated to every font, and so there is a crash. One option to fix this is just to skip over entries in the FcFontSet for which FcPatternGetInteger is unable to return a weight. But is that the correct thing to do? I don't really understand these multi-weight .ttf files -- what might it mean if entries in them do not seem to have a weight at all? Many thanks! [1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=52888 [2] https://github.com/googlefonts/Inconsolata/tree/main/fonts/variable -- Sean Whitton