Eliminate const in FcPatternGetString; too hard. Add FcCharSetCoverage to
enumarate Unicode coverage efficiently
This commit is contained in:
parent
c2e7c611cb
commit
aae6f7d487
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $XFree86: $
|
* $XFree86: xc/lib/fontconfig/fontconfig/fontconfig.h,v 1.2 2002/02/15 06:01:27 keithp Exp $
|
||||||
*
|
*
|
||||||
* Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc.
|
* Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc.
|
||||||
*
|
*
|
||||||
|
@ -329,6 +329,9 @@ FcCharSetIntersectCount (const FcCharSet *a, const FcCharSet *b);
|
||||||
FcChar32
|
FcChar32
|
||||||
FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b);
|
FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b);
|
||||||
|
|
||||||
|
FcChar32
|
||||||
|
FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result);
|
||||||
|
|
||||||
/* fcdbg.c */
|
/* fcdbg.c */
|
||||||
void
|
void
|
||||||
FcPatternPrint (FcPattern *p);
|
FcPatternPrint (FcPattern *p);
|
||||||
|
@ -505,7 +508,7 @@ FcResult
|
||||||
FcPatternGetDouble (FcPattern *p, const char *object, int n, double *d);
|
FcPatternGetDouble (FcPattern *p, const char *object, int n, double *d);
|
||||||
|
|
||||||
FcResult
|
FcResult
|
||||||
FcPatternGetString (FcPattern *p, const char *object, int n, FcChar8 const** s);
|
FcPatternGetString (FcPattern *p, const char *object, int n, FcChar8 ** s);
|
||||||
|
|
||||||
FcResult
|
FcResult
|
||||||
FcPatternGetMatrix (FcPattern *p, const char *object, int n, FcMatrix **s);
|
FcPatternGetMatrix (FcPattern *p, const char *object, int n, FcMatrix **s);
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $XFree86: $
|
* $XFree86: xc/lib/fontconfig/src/fccache.c,v 1.2 2002/02/15 06:01:27 keithp Exp $
|
||||||
*
|
*
|
||||||
* Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc.
|
* Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc.
|
||||||
*
|
*
|
||||||
|
@ -590,7 +590,7 @@ FcFileCacheWriteDir (FcFontSet *set, const FcChar8 *cache_file)
|
||||||
for (n = 0; n < set->nfont; n++)
|
for (n = 0; n < set->nfont; n++)
|
||||||
{
|
{
|
||||||
font = set->fonts[n];
|
font = set->fonts[n];
|
||||||
if (FcPatternGetString (font, FC_FILE, 0, &file) != FcResultMatch)
|
if (FcPatternGetString (font, FC_FILE, 0, (FcChar8 **) &file) != FcResultMatch)
|
||||||
goto bail1;
|
goto bail1;
|
||||||
base = (FcChar8 *) strrchr ((char *) file, '/');
|
base = (FcChar8 *) strrchr ((char *) file, '/');
|
||||||
if (base)
|
if (base)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $XFree86: xc/lib/fontconfig/src/fccharset.c,v 1.2 2002/02/15 06:01:28 keithp Exp $
|
* $XFree86: xc/lib/fontconfig/src/fccharset.c,v 1.3 2002/02/18 22:29:28 keithp Exp $
|
||||||
*
|
*
|
||||||
* Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc.
|
* Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc.
|
||||||
*
|
*
|
||||||
|
@ -557,6 +557,27 @@ FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b)
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
FcChar32
|
||||||
|
FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result)
|
||||||
|
{
|
||||||
|
FcCharSetIter ai;
|
||||||
|
|
||||||
|
ai.ucs4 = page;
|
||||||
|
FcCharSetIterSet (a, &ai);
|
||||||
|
if (!ai.leaf)
|
||||||
|
{
|
||||||
|
memset (result, '\0', 256 / 8);
|
||||||
|
page = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
memcpy (result, ai.leaf->map, sizeof (ai.leaf->map));
|
||||||
|
FcCharSetIterNext (a, &ai);
|
||||||
|
page = ai.ucs4;
|
||||||
|
}
|
||||||
|
return page;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ASCII representation of charsets.
|
* ASCII representation of charsets.
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $XFree86: $
|
* $XFree86: xc/lib/fontconfig/src/fcpat.c,v 1.2 2002/02/15 06:01:28 keithp Exp $
|
||||||
*
|
*
|
||||||
* Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc.
|
* Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc.
|
||||||
*
|
*
|
||||||
|
@ -384,7 +384,7 @@ FcPatternGetDouble (FcPattern *p, const char *object, int id, double *d)
|
||||||
}
|
}
|
||||||
|
|
||||||
FcResult
|
FcResult
|
||||||
FcPatternGetString (FcPattern *p, const char *object, int id, FcChar8 const ** s)
|
FcPatternGetString (FcPattern *p, const char *object, int id, FcChar8 ** s)
|
||||||
{
|
{
|
||||||
FcValue v;
|
FcValue v;
|
||||||
FcResult r;
|
FcResult r;
|
||||||
|
@ -394,7 +394,7 @@ FcPatternGetString (FcPattern *p, const char *object, int id, FcChar8 const ** s
|
||||||
return r;
|
return r;
|
||||||
if (v.type != FcTypeString)
|
if (v.type != FcTypeString)
|
||||||
return FcResultTypeMismatch;
|
return FcResultTypeMismatch;
|
||||||
*s = v.u.s;
|
*s = (FcChar8 *) v.u.s;
|
||||||
return FcResultMatch;
|
return FcResultMatch;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue