/*
- * $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
*
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++)
+ {
+ printf ("Page %d: %04x +%d = 0x%x\n",
+ i, numbers[i], leaves[i],
+ (intptr_t) FcOffsetToPtr (leaves, leaves[i], FcCharLeaf));
+ }
+#endif
+
for (i = 0; i < c->num; i++)
{
- FcCharLeaf *leaf = FcCharSetLeaf(c, i);
+ intptr_t leaf_offset = leaves[i];
+ FcCharLeaf *leaf = FcOffsetToPtr (leaves, leaf_offset, FcCharLeaf);
- printf ("%04x:", FcCharSetNumbers(c)[i]);
+ if (i)
+ printf ("\t");
+ printf ("%04x:", numbers[i]);
for (j = 0; j < 256/32; j++)
printf (" %08x", leaf->map[j]);
printf ("\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:
FcDebugVal = 0;
}
}
+#define __fcdbg__
+#include "fcaliastail.h"
+#undef __fcdbg__