/*
- * $RCSId: xc/lib/fontconfig/src/fcdbg.c,v 1.10 2002/08/22 18:53:22 keithp Exp $
+ * fontconfig/src/fcdbg.c
*
* Copyright © 2000 Keith Packard
*
* representations about the suitability of this software for any purpose. It
* is provided "as is" without express or implied warranty.
*
- * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
{
FcStrBuf buf;
FcChar8 init_buf[1024];
-
+
FcStrBufInit (&buf, init_buf, sizeof (init_buf));
if (FcNameUnparseLangSet (&buf, ls) && FcStrBufChar (&buf,'\0'))
printf ("%s", buf.buf);
FcCharSetPrint (const FcCharSet *c)
{
int i, j;
+ intptr_t *leaves = FcCharSetLeaves (c);
+ FcChar16 *numbers = FcCharSetNumbers (c);
+
+#if 0
+ printf ("CharSet 0x%x\n", (intptr_t) c);
+ printf ("Leaves: +%d = 0x%x\n", c->leaves_offset, (intptr_t) leaves);
+ printf ("Numbers: +%d = 0x%x\n", c->numbers_offset, (intptr_t) numbers);
for (i = 0; i < c->num; i++)
{
- FcCharLeaf *leaf = FcCharSetLeaf(c, i);
+ printf ("Page %d: %04x +%d = 0x%x\n",
+ i, numbers[i], leaves[i],
+ (intptr_t) FcOffsetToPtr (leaves, leaves[i], FcCharLeaf));
+ }
+#endif
+
+ printf ("\n");
+ for (i = 0; i < c->num; i++)
+ {
+ intptr_t leaf_offset = leaves[i];
+ FcCharLeaf *leaf = FcOffsetToPtr (leaves, leaf_offset, FcCharLeaf);
- printf ("%04x:", FcCharSetNumbers(c)[i]);
+ printf ("\t");
+ printf ("%04x:", numbers[i]);
for (j = 0; j < 256/32; j++)
printf (" %08x", leaf->map[j]);
printf ("\n");
{
int i;
FcPatternElt *e;
-
+
if (!p)
{
printf ("Null pattern\n");
{
e = &FcPatternElts(p)[i];
printf ("\t%s:", FcObjectName(e->object));
- /* so that fc-match properly displays file: foo... */
- if (e->object == FC_FILE_OBJECT)
- {
- FcChar8 * s;
- FcPatternObjectGetString (p, FC_FILE_OBJECT, 0, &s);
- printf (" \"%s\"", s);
- switch (FcPatternEltValues(e)->binding) {
- case FcValueBindingWeak:
- printf ("(w)");
- break;
- case FcValueBindingStrong:
- printf ("(s)");
- break;
- case FcValueBindingSame:
- printf ("(=)");
- break;
- }
- }
- else
- FcValueListPrint (FcPatternEltValues(e));
+ FcValueListPrint (FcPatternEltValues(e));
printf ("\n");
}
printf ("\n");
case FcMatchFont:
printf ("font ");
break;
+ case FcMatchScan:
+ printf ("scan ");
+ break;
}
switch (test->qual) {
case FcQualAny:
{
FcEdit *e;
FcTest *t;
-
+
printf ("match\n");
for (t = subst->test; t; t = t->next)
{
FcDebugVal = 0;
}
}
+#define __fcdbg__
+#include "fcaliastail.h"
+#undef __fcdbg__