Blame SOURCES/fontconfig-fix-memleaks.patch

f02dd2
From 684c3ce6850c4168e127ea84432e7a9006296ff4 Mon Sep 17 00:00:00 2001
f02dd2
From: Akira TAGOH <akira@tagoh.org>
f02dd2
Date: Fri, 25 May 2018 13:51:10 +0900
f02dd2
Subject: [PATCH 1/7] Fix leaks
f02dd2
f02dd2
---
f02dd2
 src/fcxml.c | 9 +++++++++
f02dd2
 1 file changed, 9 insertions(+)
f02dd2
f02dd2
diff --git a/src/fcxml.c b/src/fcxml.c
f02dd2
index 1ee1ba1..c69ee50 100644
f02dd2
--- a/src/fcxml.c
f02dd2
+++ b/src/fcxml.c
f02dd2
@@ -2777,6 +2777,11 @@ FcParseAcceptRejectFont (FcConfigParse *parse, FcElement element)
f02dd2
 	    {
f02dd2
 		FcConfigMessage (parse, FcSevereError, "out of memory");
f02dd2
 	    }
f02dd2
+	    else
f02dd2
+	    {
f02dd2
+		if (parse->scanOnly && vstack->u.string)
f02dd2
+		    FcStrFree (vstack->u.string);
f02dd2
+	    }
f02dd2
 	    break;
f02dd2
 	case FcVStackPattern:
f02dd2
 	    if (!parse->scanOnly && !FcConfigPatternsAdd (parse->config,
f02dd2
@@ -2786,7 +2791,11 @@ FcParseAcceptRejectFont (FcConfigParse *parse, FcElement element)
f02dd2
 		FcConfigMessage (parse, FcSevereError, "out of memory");
f02dd2
 	    }
f02dd2
 	    else
f02dd2
+	    {
f02dd2
+		if (parse->scanOnly && vstack->u.pattern)
f02dd2
+		    FcPatternDestroy (vstack->u.pattern);
f02dd2
 		vstack->tag = FcVStackNone;
f02dd2
+	    }
f02dd2
 	    break;
f02dd2
 	default:
f02dd2
 	    FcConfigMessage (parse, FcSevereWarning, "bad font selector");
f02dd2
-- 
f02dd2
2.17.1
f02dd2