fontconfig/src
Mike FABIAN 07e646cc84 Avoid crashes if config files contain junk.
If ~/.fonts.conf contains:

  <edit mode="assign_replace" name="spacing">
     <int>mono</int>
       </edit>

fontconfig crashes:

    mfabian@magellan:~$ fc-match sans
        Fontconfig error: "~/.fonts.conf", line 46: "mono": not a valid
	integer
	    セグメンテーション違反です (core dumped)
	        mfabian@magellan:~$

Of course the above is nonsense, “mono” is no valid integer indeed.

But I think nevertheless fontconfig should not crash in that case.

The problem was caused by partially truncated expression trees caused by
parse errors -- typechecking these walked the tree without verifying the
integrity of the structure. Of course, the whole tree will be discarded
shortly after being loaded as it contained an error.
2007-10-18 05:44:28 -07:00
..
Makefile.am Build fontconfig.def from header files when needed. 2006-09-17 14:09:12 -07:00
fcatomic.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcblanks.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fccache.c Don't use X_OK bit when checking for writable directories (bug 12438) 2007-10-18 05:04:39 -07:00
fccfg.c Reimplement FcConfigAppFontAddDir; function was lost in 2.4.0. 2006-09-15 00:23:40 -07:00
fccharset.c Charset hashing depended on uniqueness of leaves. 2006-09-06 17:45:40 -07:00
fcdbg.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcdefault.c Accept locale environment variables that do not contain territory. 2006-09-09 10:04:42 -07:00
fcdir.c Store font directory mtime in cache file. 2007-10-18 04:13:51 -07:00
fcfreetype.c Make FC_FULLNAME include all fullname entries, elide nothing. [bug 12827] 2007-10-18 04:31:33 -07:00
fcfs.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcinit.c Warn (and recover) from config file without <cachedir> elements. 2006-12-02 12:14:49 -08:00
fcint.h Store font directory mtime in cache file. 2007-10-18 04:13:51 -07:00
fclang.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fclist.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcmatch.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcmatrix.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcname.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcpat.c Make FcPatternDuplicate copy the binding instead of always using Strong. 2007-03-12 10:21:35 -07:00
fcserialize.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
fcstr.c FcStrCanonAbsoluteFilename should be static. 2006-11-12 17:15:55 -08:00
fcxml.c Avoid crashes if config files contain junk. 2007-10-18 05:44:28 -07:00
ftglue.c Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) 2006-09-05 02:24:01 -07:00
ftglue.h Hide FreeType glue code from library ABI. 2006-09-04 02:13:13 -07:00
makealias Fix grep pattern in makealias to work on non-Gnu grep (bug 8368). 2006-12-02 13:14:23 -08:00