fontconfig: Branch 'master' - 2 commits

[email protected] (Akira TAGOH)
Newsgroups gmane.comp.fonts.fontconfig
Message-ID <[email protected]>
 src/fchash.c  |    2 ++
 src/fcmatch.c |    2 ++
 2 files changed, 4 insertions(+)

New commits:
commit aa85a2b3b6b652c079e895865e800e3d9b60a5f5
Author: Akira TAGOH <[email protected]>
Date:   Tue Dec 19 12:16:48 2017 +0900

    Try to get current instance of FcConfig as far as possible

diff --git a/src/fcmatch.c b/src/fcmatch.c
index 95bb204..f06d98a 100644
--- a/src/fcmatch.c
+++ b/src/fcmatch.c
@@ -653,6 +653,8 @@ FcFontRenderPrepare (FcConfig	    *config,
 		if (!l)
 		    goto bail0;
 		dir = FcStrDirname (FcValueString (&l->value));
+		if (!config)
+			config = FcConfigGetCurrent ();
 		if (config && FcHashTableFind (config->alias_table, dir, (void **) &alias))
 		{
 		    FcChar8 *base = FcStrBasename (FcValueString (&l->value));
commit 0b59a65a71b5482aab63a2fe7eff2820f2512941
Author: Alexander Larsson <[email protected]>
Date:   Mon Dec 18 16:17:10 2017 +0100

    fchash: Fix replace
    
    When we replace a bucket in the hashtable we have to update the
    next pointer too, or we lose all the other elements that hashed to
    this key.

diff --git a/src/fchash.c b/src/fchash.c
index 5c1a281..ba6a453 100644
--- a/src/fchash.c
+++ b/src/fchash.c
@@ -182,6 +182,7 @@ FcHashTableAddInternal (FcHashTable *table,
 	{
 	    if (replace)
 	    {
+		bucket->next = b->next;
 		if (!fc_atomic_ptr_cmpexch (prev, b, bucket))
 		    goto retry;
 		bucket = b;
@@ -191,6 +192,7 @@ FcHashTableAddInternal (FcHashTable *table,
 	    goto destroy;
 	}
     }
+    bucket->next = NULL;
     if (!fc_atomic_ptr_cmpexch (prev, b, bucket))
 	goto retry;
 
_______________________________________________
Fontconfig mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/fontconfig
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.