]> git.wh0rd.org - fontconfig.git/blobdiff - src/fclist.c
[fcxml.c] Embed a static 64-byte attr buffer in FcPStack
[fontconfig.git] / src / fclist.c
index c0b7fb0cdfc1b7a2af8b8af3a085687421e12bf4..e87e06e2bde907fae77718c88e0576e528db035a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $RCSId: xc/lib/fontconfig/src/fclist.c,v 1.11tsi Exp $
+ * fontconfig/src/fclist.c
  *
  * Copyright © 2000 Keith Packard
  *
@@ -457,6 +457,7 @@ FcFontSetList (FcConfig         *config,
     FcListHashTable table;
     int                    i;
     FcListBucket    *bucket;
+    int             destroy_os = 0;
 
     if (!config)
     {
@@ -468,6 +469,13 @@ FcFontSetList (FcConfig        *config,
            goto bail0;
     }
     FcListHashTableInit (&table);
+
+    if (!os)
+    {
+       os = FcObjectGetSet ();
+       destroy_os = 1;
+    }
+
     /*
      * Walk all available fonts adding those that
      * match to the hash table
@@ -532,6 +540,8 @@ bail2:
 bail1:
     FcListHashTableCleanup (&table);
 bail0:
+    if (destroy_os)
+       FcObjectSetDestroy (os);
     return 0;
 }
 
@@ -545,6 +555,9 @@ FcFontList (FcConfig        *config,
 
     if (!config)
     {
+       if (!FcInitBringUptoDate ())
+           return 0;
+
        config = FcConfigGetCurrent ();
        if (!config)
            return 0;
@@ -556,3 +569,6 @@ FcFontList (FcConfig        *config,
        sets[nsets++] = config->fonts[FcSetApplication];
     return FcFontSetList (config, sets, nsets, p, os);
 }
+#define __fclist__
+#include "fcaliastail.h"
+#undef __fclist__