]> git.wh0rd.org - fontconfig.git/commitdiff
[arch] Try to ensure proper FcLangSet alignment in arch
authorBehdad Esfahbod <behdad@behdad.org>
Mon, 16 Nov 2009 22:38:40 +0000 (17:38 -0500)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 16 Nov 2009 22:46:18 +0000 (17:46 -0500)
fc-arch/fc-arch.c
fc-arch/fcarch.tmpl.h
src/fclang.c

index d0f5192e694c617906c920208d463ae4e99590ac..09a9d820a3e3be6f03ccdef2aee85c4b2446a5b1 100644 (file)
@@ -25,7 +25,7 @@
 #include <ctype.h>
 
 #define ENDIAN_TEST 0x12345678
-#define MACHINE_SIGNATURE_SIZE (9*22 + 1)
+#define MACHINE_SIGNATURE_SIZE (9*23 + 1)
 
 static char *
 FcCacheMachineSignature (void)
@@ -36,7 +36,7 @@ FcCacheMachineSignature (void)
 
     sprintf (buf, "%2x%2x%2x%2x_"
             "%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_"
-            "%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x",
+            "%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x_%08x",
             m[0], m[1], m[2], m[3],
             (unsigned int)sizeof (FcAlign),
             (unsigned int)sizeof (char),
@@ -52,6 +52,7 @@ FcCacheMachineSignature (void)
             (unsigned int)sizeof (FcValue),
             (unsigned int)sizeof (FcValueBinding),
             (unsigned int)sizeof (struct  FcValueList *),
+            (unsigned int)sizeof (FcStrSet *), /* For FcLangSet */
             (unsigned int)sizeof (FcCharSet),
             (unsigned int)sizeof (FcCharLeaf **),
             (unsigned int)sizeof (FcChar16 *),
index aac3bcfaac072428816b2e7b0f0f0a55dc975f9d..09eccdc0198d2e46bae0d9db3d986555a245e56b 100644 (file)
 @@@ name. Architecture names are used to construct file names, so
 @@@ use something reasonable and don't include any spaces
 @@@
-@@@ name    endian   FcAlign  char     char*    int      intptr_t Pattern  EltPtr   Elt *    Elt      ObjPtr   VLPtr    Value    Binding  VL *     CharSet  Leaf**   Char16 * Char16   Leaf     Char32   Cache
-x86        78563412_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_0000000c_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
-x86-64     78563412_00000008_00000001_00000008_00000004_00000008_00000018_00000008_00000008_00000010_00000004_00000008_00000010_00000004_00000008_00000018_00000008_00000008_00000002_00000020_00000004_00000038
-ppc        12345678_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_00000010_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
-ppc64      12345678_00000008_00000001_00000008_00000004_00000008_00000018_00000008_00000008_00000010_00000004_00000008_00000010_00000004_00000008_00000018_00000008_00000008_00000002_00000020_00000004_00000038
-m68k       12345678_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_0000000c_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
-mipsel     78563412_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_00000010_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
-sparc64     12345678_00000008_00000001_00000008_00000004_00000008_00000018_00000008_00000008_00000010_00000004_00000008_00000010_00000004_00000008_00000018_00000008_00000008_00000002_00000020_00000004_00000038
+@@@ name    endian   FcAlign  char     char*    int      intptr_t Pattern  EltPtr   Elt *    Elt      ObjPtr   VLPtr    Value    Binding  VL *     StrSet * CharSet  Leaf**   Char16 * Char16   Leaf     Char32   Cache
+x86        78563412_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_0000000c_00000004_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
+x86-64     78563412_00000008_00000001_00000008_00000004_00000008_00000018_00000008_00000008_00000010_00000004_00000008_00000010_00000004_00000008_00000008_00000018_00000008_00000008_00000002_00000020_00000004_00000038
+ppc        12345678_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_00000010_00000004_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
+ppc64      12345678_00000008_00000001_00000008_00000004_00000008_00000018_00000008_00000008_00000010_00000004_00000008_00000010_00000004_00000008_00000008_00000018_00000008_00000008_00000002_00000020_00000004_00000038
+m68k       12345678_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_0000000c_00000004_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
+mipsel     78563412_00000008_00000001_00000004_00000004_00000004_00000010_00000004_00000004_00000008_00000004_00000004_00000010_00000004_00000004_00000004_00000010_00000004_00000004_00000002_00000020_00000004_00000020
+sparc64     12345678_00000008_00000001_00000008_00000004_00000008_00000018_00000008_00000008_00000010_00000004_00000008_00000010_00000004_00000008_00000008_00000018_00000008_00000008_00000002_00000020_00000004_00000038
index 0f2f963d0dae0fcbc63ced64736c5a430e903294..61c4da6615eff6a58a173ac1493323355298c2bf 100644 (file)
@@ -39,7 +39,7 @@ typedef struct {
 
 struct _FcLangSet {
     FcStrSet   *extra;
-    int         map_size;
+    FcChar32    map_size;
     FcChar32   map[NUM_LANG_SET_MAP];
 };