]> git.wh0rd.org - fontconfig.git/blobdiff - ChangeLog
Restore code to skip over PCF fonts that have no encoded characters. (We
[fontconfig.git] / ChangeLog
index f2b0ec28b9afdde79717fffaae38304f89ed2f25..f296a88ddbf4561a35e9b38eddb5b3c3d7b80305 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,375 @@
+2005-12-20  Patrick Lam  <plam@mit.edu>
+       * src/fcfreetype.c (FcFreeTypeQuery):
+
+       Restore code to skip over PCF fonts that have no encoded
+       characters.
+       (We guess that a font is PCF by presence of the PIXEL_SIZE
+       BDF property.)
+
+2005-12-12  Patrick Lam  <plam@mit.edu>
+       * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
+
+       Read and write the original location as a fallback for the
+       hashed cache file locations.  This is mostly for users to be
+       able to have per-directory cache files.
+
+2005-12-12  Patrick Lam  <plam@mit.edu>
+       * fc-cache/fc-cache.c (scanDirs):
+       * fc-cache/Makefile.am:
+       * src/fccache.c (FcDirCacheHashName):
+
+       Improve error message when fc-cache can't write the cache.  Add
+       missing slash.  Reported by Behdad.  Incorporate Behdad's patch to
+       create /var/cache/fontconfig when appropriate.
+
+2005-12-12  Behdad Esfahbod  <behdad@cs.toronto.edu>
+       reviewed by: plam
+       
+       * src/fcxml.c (FcConfigGetAttribute):
+
+       Fix crash reported by Frederic Crozat when using libxml2.
+
+2005-12-09  Patrick Lam  <plam@mit.edu>
+       * INSTALL:
+       * configure.in:
+       * fc-cache/Makefile.am:
+       * fc-cat/Makefile.am:
+       * src/Makefile.am:
+       * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
+       * fontconfig/fontconfig.h (FC_CACHE_SUFFIX):
+       * src/fccache.c (FcCacheSkipString, FcGlobalCacheLoad,
+                       FcGlobalCacheSave, FcCacheNextOffset, FcDirCacheValid,
+                       FcDirCacheHasCurrentArch, FcDirCacheHashName,
+                       FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
+
+       Migrate cache files from fonts directories to
+       /var/cache/fontconfig.  This helps make fontconfig FHS-compliant,
+       but requires that all caches get rebuilt.
+
+       Also, autogen.sh now needs the additional parameter
+       --localstatedir=/var.
+       
+2005-12-07  Patrick Lam  <plam@mit.edu>
+       * src/fcpat.c (FcPatternAddString):
+
+       Because we've changed FcPatternAddString to use FcStrStaticName
+       and not FcValueSave, explicitly handle the case of a null string.
+
+2005-12-06  Patrick Lam  <plam@mit.edu>
+       * fc-cat/fc-cat.c (FcCachePrintSet, FcCacheGlobalFileReadAndPrint):
+
+       Fix warnings.
+
+2005-12-05  Patrick Lam  <plam@mit.edu>
+       * src/fcname.c (FcNameGetObjectType):
+
+       Don't assign types to user object names.
+
+2005-12-05  Patrick Lam  <plam@mit.edu>
+       * src/fcpat.c (FcValueDestroy, FcValueListDestroy, FcStrHashed):
+
+       Don't free strings that have been returned from FcStrStaticName.
+
+2005-12-01  Patrick Lam  <plam@mit.edu>
+       * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main):
+
+       Add codepath for reading global cache files as well.
+
+2005-12-01  Behdad Esfahbod  <behdad@cs.toronto.edu>
+       reviewed by: plam
+
+       * conf.d/10-fonts.persian.conf:
+       * conf.d/Makefile.am:
+
+       Add config file for Persian fonts from Sharif FarsiWeb, Inc.
+
+2005-11-30  Behdad Esfahbod  <behdad@cs.toronto.edu>
+       reviewed by: plam
+
+       * src/fcxml.c (FcConfigParseAndLoad):
+
+       Only add a config file to the set of config files once.
+
+2005-11-29  Patrick Lam  <plam@mit.edu>
+       * src/fcint.h (FcCacheBankToIndex);
+
+       Fix segfault by guarding array dereference.
+
+2005-11-29  Dirk Mueller  <dmueller@suse.de>
+       reviewed by: plam
+       
+       * fc-lang/fc-lang.c:
+       * src/fccache.c (FcDirCacheConsume, FcCacheHaveBank,
+                        FcCacheBankToIndex, FcCacheBankToIndexMTF,
+                        FcCacheAddBankDir):
+       * src/fcint.h:
+
+       Refactor FcCacheBankToIndex into an inlineable part
+       (in fcint.h) which checks the front of the list and a
+       non-inlineable part which finds and moves the appropriate element
+       to the front of the list.
+
+2005-11-29  Patrick Lam  <plam@mit.edu>
+       * src/fccfg.c (FcConfigBuildFonts):
+       * src/fccache.c (FcCacheReadDirs):
+
+       Make the perf guys hate me a bit less: hoist the directory-name
+       FcConfigAcceptFont check for cached fonts up to directory cache
+       read time, rather than running it for each font.
+
+2005-11-29  Patrick Lam  <plam@mit.edu>
+       * src/fccfg.c (FcConfigBuildFonts):
+       * src/fcint.h:
+       * src/fcpat.c (FcPatternFindFullFname):
+
+       Don't make FcPatternFindFullFname available to fccfg, it's not
+       really safe.  Instead go through FcPatternGetString (sorry,
+       perf guys.)  Also, use globs for dirs as well.
+
+2005-11-28  Patrick Lam  <plam@mit.edu>
+       * src/fccfg.c (FcConfigBuildFonts):
+
+       Fix segfault.
+
+2005-11-28  Patrick Lam  <plam@mit.edu>
+       * src/fcint.h:
+       * src/fcpat.c (FcPatternFindFullFname):
+       * src/fccfg.c (FcConfigBuildFonts):
+
+       Fix problem dating back at least to 2.3.2 where globs weren't
+       being applied to patterns loaded from a cache.
+
+2005-11-28  Patrick Lam  <plam@mit.edu>
+       * doc/fontconfig-user.sgml:
+
+       Fix some obvious spelling mistakes.
+       
+2005-11-28  Dirk Mueller  <dmueller@suse.com>
+           Stephan Kulow  <coolo@suse.de>
+       reviewed by: plam
+
+       * src/fcmatch.c (FcFontSetMatch):
+
+       Don't kill all fonts during match (oops!)
+
+
+2005-11-25  Dirk Mueller  <dmueller@suse.com>
+            Stephan Kulow  <coolo@suse.de>
+            Michael Matz  <matz@suse.de>
+        reviewed by: plam
+
+        * src/fcmatch.c (FcObjectPtrToMatcher, FcCompareValueList,
+                FcFontSetMatch):
+
+        Rewrite FcFontSetMatch to a path-finding based algorithm, i.e.
+        inline FcCompare into FcFontSetMatch and reorder the
+        loops, adding a boolean array which blocks patterns from future
+        consideration if they're known to not be best on some past
+        criterion.
+
+2005-11-26  Dirk Mueller  <dmueller@suse.com>
+       reviewed by: plam
+       
+       * src/fcmatch.c (FcCompareValueList):
+
+       Fix incorrect merge.
+
+2005-11-25  Patrick Lam  <plam@mit.edu>
+       * src/fcmatch.c (FcMatchObjectPtrsInit, FcCompareValueList):
+
+       Don't do random matching when bad objects are passed into
+       FcCompareValueList.
+
+2005-11-25  Patrick Lam  <plam@mit.edu>
+       * src/fcint.h:
+       * src/fcpat.c (FcPatternEnsureBank, FcPatternDistributeBytes, 
+                       FcPatternSerialize, FcPatternUnserialize, 
+                       FcValueListEnsureBank, FcValueListDistributeBytes,
+                       FcValueListUnserialize):
+
+       Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
+       _fcPatternElts, _fcValueLists for consistency.
+
+2005-11-25  Dirk Mueller  <dmueller@suse.com>
+       reviewed by: plam
+
+       * src/fcmatch.c:
+
+       Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
+
+2005-11-25  Patrick Lam  <plam@mit.edu>
+       * src/fcint.h:
+       * src/fccache.c (FcDirCacheConsume):
+       * src/fccharset.c (FcCharSetUnserialize):
+       * src/fcfs.c (FcFontSetUnserialize):
+       * src/fclang.c (FcLangSetUnserialize):
+       * src/fcname.c (FcObjectUnserialize):
+       * src/fcpat.c (FcStrUnserialize, FcValueListUnserialize, 
+                       FcPatternUnserialize):
+
+       Pass around FcCache *s to the Unserialize functions for extra
+       consistency (and less overhead, for what that's worth).
+
+2005-11-24  Dirk Mueller  <dmueller@suse.com>
+       reviewed by: plam
+
+       * src/fcint.h:
+       * src/fcmatch.c (FcCompare*, FcFontSetSort):
+       * src/fcname.c (FcNameUnparseValue):
+
+       Inline the *PtrU functions to gain perf.
+       Remove unneeded params for the FcCompare* functions.
+
+2005-11-24  Dirk Mueller  <dmueller@suse.com>
+       reviewed by: plam
+       
+        * src/fcint.h, fontconfig/fontconfig.h: 
+        
+       Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
+
+        * src/fcpat.c, src/fcint.h, src/fcname.c:
+          
+       Check for type validity during FcPatternAddWithBinding, don't
+       verify type in FcFontMatch, don't call FcCanonicalize here
+        (which always does a deep copy).
+
+2005-11-24  Dirk Mueller  <dmueller@suse.com>
+       reviewed by: plam
+
+       * src/fcmatch.c (FcCompareNumber, FcCompareString, FcCompareFamily):
+       * src/fcpat.c (FcPatternAddWithBinding):
+
+       Make FcCompareString and FcCompareFamily less expensive.
+       Only add a value for FC_FAMILY if the proposed value is a string.
+
+2005-11-24  Dirk Mueller  <dmueller@suse.com>
+       reviewed by: plam
+       
+       * src/fcdbg.c (FcDebug, FcDebugInit, FcPatternPrint):
+       * src/fcinit.c (FcInitLoadConfig, FcInitLoadConfigAndFonts):
+       * src/fcint.h (FcDebug):
+       
+       Inline FcDebug invocations and only initialize once, in FcInit*.
+       Improve debug msg in FcPatternPrint.
+
+2005-11-23  Frederic Crozat  <fcrozat@mandriva.com>:
+       reviewed by: plam
+       
+       * fontconfig/fontconfig.h:
+       * fc-cat/fc-cat.c:
+
+       Minor code warning cleanups.
+
+2005-11-23  Frederic Crozat  <fcrozat@mandriva.com>:
+       reviewed by: plam
+       
+       * fc-match/fc-match.c (main):
+
+       Make getopt_long accept -s parameter to fc-match as well.
+
+2005-11-21  Dirk Mueller <dmueller@suse.com>
+       reviewed by: plam
+
+       * src/fcmatch.c (FcCompareValueList):
+
+       Manually perform inlining & partial redundancy elimination to
+       reduce calls to FcValueListPtrU.
+
+2005-11-21  Dirk Mueller <dmueller@suse.com>
+       reviewed by: plam
+
+        * src/fcstr.c (FcStrFree, FcStrCaseWalkerInit, FcStrCaseWalkerLong,
+                      FcStrCaseWalkerNext, FcStrCaseWalkerNextIgnoreBlanks): 
+
+       Only invoke strlen() when really necessary.
+       
+2005-11-19  Matthias Clasen  <mclasen@redhat.com>
+       reviewed by: plam
+
+       * src/Makefile.am:
+       * src/fcfreetype.c (FcGetPixelSize, FcFreeTypeQuery, GetScriptTags,
+                           FcFontCapabilities):
+       * src/ftglue.c:
+       * src/ftglue.h:
+
+       Get rid of the use of freetype internal headers in fcfreetype.c,
+       since those headers will go away with freetype 2.2.  Replace with
+       public domain ftglue code from pango.  Note that the patch removes
+       some extra error checking in FT_Get_BDF_Property() and comments
+       out the skipping of empty pcf fonts.
+
+2005-11-19  Jinghua Luo  <sunmoon1997@gmail.com>
+       reviewed by: plam
+
+       * fc-lang/fc-lang.c (main):
+
+       Further fix of patch from 2005-11-04: miscounted numbers count
+       (numbers_count); didn't strip duplicate numbers (langBankNumbers);
+       and leafidx_offset and numbers_offset in fcLangCharSets are wrong.
+
+       Removed leafidx_count and numbers_count since they are the same
+       and replaced them with offset_count.
+
+2005-11-18  Frederic Crozat  <fcrozat@mandriva.com>
+       reviewed by: plam
+
+       * fc-cat/fc-cat.c (main):
+
+       Don't crash when fc-cat invoked with no arguments.
+
+2005-11-18  Frederic Crozat  <fcrozat@mandriva.com>
+       reviewed by: plam
+
+       * src/fcxml.c (FcConfigSaveAttr, FcConfigParseAndLoad):
+
+       Fix invalid read access caused by premature free and
+       GCC4 warnings in libxml2 codepath.
+
+2005-11-17  Jinghua Luo  <sunmoon1997@gmail.com>
+       reviewed by: plam
+
+       * src/fccfg.c (FcConfigValues):
+
+       List iteration not needed in FcConfigValues, since it's building
+       up the list itself; we can just strip FcVoid elements during
+       construction.
+
+2005-11-17  Patrick Lam  <plam@mit.edu>
+       * src/fccfg.c (FcConfigValues):
+
+       Fix crash on invalid constants in config files (forgot to update
+       a pointer upon list iteration.)
+
+2005-11-17  Frederic Crozat  <fcrozat@mandriva.com>
+       reviewed by: plam
+
+       * src/fcxml.c (FcTypecheckExpr):
+
+       Complain about invalid constants in config files.
+
+2005-11-17  Andreas Schwab  <schwab@suse.de>
+       reviewed by: plam
+       
+       * src/fccache.c (FcGlobalCacheSave): 
+
+       Don't add current_arch_start more than once.
+
+2005-11-16  Patrick Lam  <plam@mit.edu>
+       * src/fccharset.c (FcCharSetDistributeBytes, FcCharSetUnserialize):
+       * src/fcfs.c (FcFontSetUnserialize):
+       * src/fcname.c (FcObjectDistributeBytes, FcObjectUnserialize):
+       * src/fcpat.c (FcStrUnserialize):
+
+       Fix ordering of ALIGN with respect to saving block_ptr; add
+       another ALIGN to fcfs.c.
+
+2005-11-16  Patrick Lam  <plam@mit.edu>
+       * src/fccache.c (FcDirCacheProduce)
+       
+       Fix case where alignment bytes bumped up metadata->count
+       causing unwarranted failures to write cache files.  
+       (Reported by Stephan Kulow).
+
 2005-11-16  Patrick Lam  <plam@mit.edu>
        * src/fccache.c (FcDirCacheProduce):
        * src/fccharset.c (FcCharSetDistributeBytes):