]> git.wh0rd.org - fontconfig.git/blobdiff - fc-arch/fc-arch.c
[arch] Try to ensure proper FcLangSet alignment in arch
[fontconfig.git] / fc-arch / fc-arch.c
index 017903465fd8c8fd2518143251a701fbb2993e6a..09a9d820a3e3be6f03ccdef2aee85c4b2446a5b1 100644 (file)
 #include <ctype.h>
 
 #define ENDIAN_TEST 0x12345678
-#define MACHINE_SIGNATURE_SIZE (9*21 + 1)
-#define MACHINE_ARCH_SIZE   32
-/* for when we don't have sysconf: */
-#define FC_HARDCODED_PAGESIZE 8192 
+#define MACHINE_SIGNATURE_SIZE (9*23 + 1)
 
 static char *
 FcCacheMachineSignature (void)
@@ -39,33 +36,30 @@ 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",
             m[0], m[1], m[2], m[3],
+            (unsigned int)sizeof (FcAlign),
             (unsigned int)sizeof (char),
             (unsigned int)sizeof (char *),
             (unsigned int)sizeof (int),
+            (unsigned int)sizeof (intptr_t),
             (unsigned int)sizeof (FcPattern),
             (unsigned int)sizeof (FcPatternEltPtr),
             (unsigned int)sizeof (struct  FcPatternElt *),
             (unsigned int)sizeof (FcPatternElt),
-            (unsigned int)sizeof (FcObjectPtr),
+            (unsigned int)sizeof (FcObject),
             (unsigned int)sizeof (FcValueListPtr),
             (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 *),
             (unsigned int)sizeof (FcChar16),
             (unsigned int)sizeof (FcCharLeaf),
             (unsigned int)sizeof (FcChar32),
-            (unsigned int)sizeof (FcCache),
-#if defined (HAVE_SYSCONF)
-            (unsigned int)sysconf(_SC_PAGESIZE)
-#else
-            (unsigned int)FC_HARDCODED_PAGESIZE
-#endif
-            );
+            (unsigned int)sizeof (FcCache));
 
     return buf;
 }