Patrick Lam
cbe1df8150
Don't do random matching when bad objects are passed into
...
FcCompareValueList.
2005-11-25 16:33:58 +00:00
Patrick Lam
81fe99fdd0
Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
...
_fcPatternElts, _fcValueLists for consistency.
2005-11-25 16:04:44 +00:00
Patrick Lam
d854eaf8a9
Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
...
reviewed by: plam
2005-11-25 15:54:24 +00:00
Patrick Lam
61571f3f2e
Pass around FcCache *s to the Unserialize functions for extra consistency
...
(and less overhead, for what that's worth).
2005-11-25 15:50:34 +00:00
Patrick Lam
9ab79bdfb7
Inline the *PtrU functions to gain perf. Remove unneeded params for the
...
FcCompare* functions.
reviewed by: plam
2005-11-25 03:00:51 +00:00
Patrick Lam
1c9fdccab9
Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
...
Check for type validity during FcPatternAddWithBinding, don't verify type
in FcFontMatch, don't call FcCanonicalize here (which always does a
deep copy).
reviewed by: plam
2005-11-24 21:40:20 +00:00
Patrick Lam
4f8b266fd9
Make FcCompareString and FcCompareFamily less expensive. Only add a value
...
for FC_FAMILY if the proposed value is a string.
reviewed by: plam
2005-11-24 20:20:26 +00:00
Patrick Lam
b97a34b592
Inline FcDebug invocations and only initialize once, in FcInit*. Improve
...
debug msg in FcPatternPrint.
reviewed by: plam
2005-11-24 19:38:05 +00:00
Patrick Lam
f7c4624f56
2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
...
Minor code warning cleanups.
2005-11-23 16:36:26 +00:00
Patrick Lam
435fc66073
2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
...
Make getopt_long accept -s parameter to fc-match as well.
2005-11-23 15:32:36 +00:00
Patrick Lam
adac22f290
Manually perform inlining & partial redundancy elimination to reduce calls
...
to FcValueListPtrU.
Only invoke strlen() when really necessary.
reviewed by: plam
reviewed by: plam
2005-11-22 04:46:55 +00:00
Patrick Lam
8c24aa6b45
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.
reviewed by: plam
2005-11-19 22:38:39 +00:00
Patrick Lam
8ebf7725a8
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.
reviewed by: plam
2005-11-19 22:32:13 +00:00
Patrick Lam
a151acedc0
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.
reviewed by: plam
2005-11-19 16:24:53 +00:00
Patrick Lam
8f2a807810
Don't crash when fc-cat invoked with no arguments.
...
Fix invalid read access caused by premature free and GCC4 warnings in
libxml2 codepath.
reviewed by: plam
reviewed by: plam
2005-11-18 20:32:30 +00:00
Patrick Lam
82912b062b
List iteration not needed in FcConfigValues, since it's building up the
...
list itself; we can just strip FcVoid elements during construction.
reviewed by: plam
2005-11-18 04:21:10 +00:00
Patrick Lam
38b2ecad5a
Fix crash on invalid constants in config files (forgot to update a pointer
...
upon list iteration.)
2005-11-17 16:46:07 +00:00
Patrick Lam
f28472fdb4
Complain about invalid constants in config files.
...
reviewed by: plam
2005-11-17 16:17:05 +00:00
Patrick Lam
1c5b6345b9
Don't add current_arch_start more than once.
...
Fix ordering of ALIGN with respect to saving block_ptr; add another ALIGN
to fcfs.c.
reviewed by: plam
2005-11-17 15:43:39 +00:00
Patrick Lam
8e351527bb
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 17:49:01 +00:00
Patrick Lam
7fd7221e68
Add *NeededBytesAlign(), which overestimates the padding which is later
...
added by the new ALIGN macro. Fix alignment problems on ia64 and s390
by bumping up block_ptr appropriately. (Earlier version by Andreas
Schwab).
Use sysconf to determine proper PAGESIZE value; this appears to be
POSIX-compliant. (reported by Andreas Schwab)
reviewed by: plam
2005-11-16 15:55:17 +00:00
Patrick Lam
82f35f8bb4
Fix bug 2878 (excessive relocations at startup for charsets, reported by
...
Ross Burton): fc-lang/fc-lang now creates the static form of the
langset, not the dynamic form, so that the charsets should now be in
.rodata.
2005-11-04 19:31:26 +00:00
Patrick Lam
50544b13c1
Add test for validity of directory caches that somehow got lost (reported
...
by make distcheck).
2005-11-04 16:48:32 +00:00
Patrick Lam
e6d3e251ee
Bump version to 2.3.92.
2005-11-04 06:17:00 +00:00
Patrick Lam
ea9726b620
Fix argument ordering problem in call to FcPatternTransferFullFname.
2005-11-03 04:45:57 +00:00
Patrick Lam
7358dae49b
Fix warnings and embarrassing double-free error.
2005-11-03 04:23:22 +00:00
Patrick Lam
efa9f2bd07
Change the rule for artificial emboldening in fonts.conf.in. This enables
...
the support for artificial emboldening included in cairo.
reviewed by: plam
2005-11-02 15:57:36 +00:00
Patrick Lam
d7b3ac6367
Don't zero out full names for FC_REF_CONSTANT fonts; also, duplicate full
...
names when transferring, and free full names when freeing the
associated font. Reported by Jinghua Luo.
2005-11-02 15:29:53 +00:00
Patrick Lam
303bcf9b9d
Revert the previous patch and commit the correct patch: I forgot a
...
canonicalization in FcValueListSerialize, so that it would choke on
already-serialized input files. Duh!
2005-11-02 07:37:00 +00:00
Patrick Lam
c6b75577f3
Forcibly rescan a directory before writing a fresh local cache file for
...
that directory, fixing the losing-fonts problem reported by Mike Fabian
and also apparently the font cache file corruption.
2005-11-02 07:01:25 +00:00
Patrick Lam
9090cb9ece
Fix thinko: actually, the whole global cache is stale if the global cache
...
is older than the (newest) config file.
2005-11-02 06:39:23 +00:00
Patrick Lam
2b25f00c50
Declare the global cache of a directory's contents to be stale if the
...
directory is newer than the (newest) configuration file. S:
----------------------------------------------------------------------
2005-11-02 06:29:14 +00:00
Patrick Lam
793154ed8d
Copy the full pathname whenever duplicating an FcPattern; otherwise,
...
applications continue breaking.
2005-11-01 06:57:25 +00:00
Patrick Lam
d6946c1a11
Fix small memory error (tried to free argv); use basename and dirname
...
correctly (they can modify their arguments).
2005-11-01 05:52:28 +00:00
Patrick Lam
e77c17184a
Reinstate basename patch, but keep a hash table linking FcPatterns to their
...
fully-qualified font names for clients' benefit. Clients only pay for
the font names once they request the FC_FILE property from an
FcPattern, but the font name is malloc'd at that point (i.e. not
mmapped: that's impossible, since it may vary between machines.)
Clients do have to pay for a copy of the path name per cache file.
Note that FcPatternGetString now does some rewriting if you ask for an
FC_FILE, appending the pathname as appropriate.
2005-11-01 05:26:27 +00:00
Patrick Lam
720298e773
Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether to load
...
embedded bitmaps or not.
reviewed by: plam
2005-10-26 06:34:29 +00:00
Patrick Lam
961d9b9993
Only add basename to patterns' FC_FILE element, not any part of the
...
dirname.
2005-10-25 22:29:13 +00:00
Patrick Lam
573da72910
Add some more consts, fixing more GCC4 warnings.
2005-10-22 15:12:05 +00:00
Patrick Lam
904426816d
Support localized font family and style names. This has been reported to
...
break old apps like xfd, but modern (gtk+/qt/mozilla) apps work fine.
reviewed by: plam
2005-10-22 14:21:14 +00:00
Patrick Lam
e58b50e88c
Destroy the global cache file if it's terminally broken. (reported by Mike
...
Fabian)
2005-10-21 20:24:30 +00:00
Patrick Lam
2fa3f27e68
Prevent fc-list from escaping strings when printing them.
2005-10-21 19:47:43 +00:00
Patrick Lam
250c1cd422
Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild.
...
reviewed by: plam
2005-10-20 20:50:21 +00:00
Patrick Lam
21696e5bf0
Add consts to variables so as to move arrays into .rodata.
...
reviewed by: plam
2005-10-14 21:02:31 +00:00
Patrick Lam
15d7bd0a16
Check existence of directory cache file before attempting to unlink.
...
reviewed by: plam
2005-10-14 20:56:27 +00:00
Patrick Lam
1178b56976
Fix flipped return value on unlink. (Reported by Mike Fabian)
2005-10-13 12:32:14 +00:00
Patrick Lam
23787a8f1b
Add padding to make valgrind and glibc not hate each other when calling
...
strlen().
2005-10-06 20:45:25 +00:00
Patrick Lam
328929f5ea
Modify config file to use Greek fonts before Asian fonts with Greek glyphs.
...
reviewed by: plam & keithp
2005-10-05 19:38:40 +00:00
Patrick Lam
1ed67f658c
Use libtool -no-undefined flag on all platforms.
...
reviewed by: plam & keithp
2005-10-05 19:32:41 +00:00
Patrick Lam
751932ddb1
Implement move-to-front array for banks (perf regression reported by Ronny
...
V. Vindenes).
2005-10-05 18:41:55 +00:00
Patrick Lam
55c8fa4f08
Add new API which unlinks directory caches and checks dir caches for
...
existence of appropriate sections. Fix fc-cache to unlink stale cache
files and save directory caches that lack relevant sections.
2005-10-05 00:34:52 +00:00