aboutsummaryrefslogtreecommitdiff
path: root/fontconfig/src/fclist.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2012-03-28 12:32:32 +0200
committermarha <marha@users.sourceforge.net>2012-03-28 12:32:32 +0200
commit5bcf6bf5c39ca7077ed337a7b22797211a3a3fb9 (patch)
tree6bc8ab012f89a68d99be5e23f04eeca30c9ee18d /fontconfig/src/fclist.c
parent13ab72df2e606427985cd6dcf7db694f4243936b (diff)
parent992585b1df5c2d96a2cfac3835afbe818a13165f (diff)
downloadvcxsrv-5bcf6bf5c39ca7077ed337a7b22797211a3a3fb9.tar.gz
vcxsrv-5bcf6bf5c39ca7077ed337a7b22797211a3a3fb9.tar.bz2
vcxsrv-5bcf6bf5c39ca7077ed337a7b22797211a3a3fb9.zip
Merge remote-tracking branch 'origin/released'
Diffstat (limited to 'fontconfig/src/fclist.c')
-rw-r--r--fontconfig/src/fclist.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/fontconfig/src/fclist.c b/fontconfig/src/fclist.c
index 9a84b5c7e..88025e900 100644
--- a/fontconfig/src/fclist.c
+++ b/fontconfig/src/fclist.c
@@ -67,13 +67,16 @@ FcObjectSetAdd (FcObjectSet *os, const char *object)
low = 0;
mid = 0;
c = 1;
- object = (char *)FcStrStaticName ((FcChar8 *)object);
+ object = (char *)FcSharedStr ((FcChar8 *)object);
while (low <= high)
{
mid = (low + high) >> 1;
c = os->objects[mid] - object;
if (c == 0)
+ {
+ FcSharedStrFree ((FcChar8 *)object);
return FcTrue;
+ }
if (c < 0)
low = mid + 1;
else
@@ -91,8 +94,13 @@ FcObjectSetAdd (FcObjectSet *os, const char *object)
void
FcObjectSetDestroy (FcObjectSet *os)
{
+ int i;
+
if (os->objects)
{
+ for (i = 0; i < os->nobject; i++)
+ FcSharedStrFree ((FcChar8 *)os->objects[i]);
+
FcMemFree (FC_MEM_OBJECTPTR, os->sobject * sizeof (const char *));
free ((void *) os->objects);
}