summaryrefslogtreecommitdiffstats
path: root/libass/ass_fontconfig.c
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-11-02 09:57:22 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-11-02 09:57:22 +0000
commitc6012a37793663082049bfdcec711ae9ddd2b740 (patch)
tree2ab11ac4880832f1015e912ab8870bc0f8f809c7 /libass/ass_fontconfig.c
parent48b386f5d35e08e315f11457fa628d8ffce69daa (diff)
downloadlibass-c6012a37793663082049bfdcec711ae9ddd2b740.tar.bz2
libass-c6012a37793663082049bfdcec711ae9ddd2b740.tar.xz
Fallback to non-fontconfig behaviour when fontconfig initialization fails.
Also fixes a memleak in that case, bug #1313. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27875 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libass/ass_fontconfig.c')
-rw-r--r--libass/ass_fontconfig.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/libass/ass_fontconfig.c b/libass/ass_fontconfig.c
index fa15087..5edbdec 100644
--- a/libass/ass_fontconfig.c
+++ b/libass/ass_fontconfig.c
@@ -407,10 +407,7 @@ fc_instance_t* fontconfig_init(ass_library_t* library, FT_Library ftlibrary, con
if (!fc) {
mp_msg(MSGT_ASS, MSGL_WARN,
MSGTR_LIBASS_FontconfigDisabledDefaultFontWillBeUsed);
- priv->config = NULL;
- priv->path_default = strdup(path);
- priv->index_default = 0;
- return priv;
+ goto exit;
}
rc = FcInit();
@@ -419,7 +416,7 @@ fc_instance_t* fontconfig_init(ass_library_t* library, FT_Library ftlibrary, con
priv->config = FcConfigGetCurrent();
if (!priv->config) {
mp_msg(MSGT_ASS, MSGL_FATAL, MSGTR_LIBASS_FcInitLoadConfigAndFontsFailed);
- return 0;
+ goto exit;
}
for (i = 0; i < library->num_fontdata; ++i)
@@ -468,6 +465,7 @@ fc_instance_t* fontconfig_init(ass_library_t* library, FT_Library ftlibrary, con
}
priv->family_default = family ? strdup(family) : 0;
+exit:
priv->path_default = path ? strdup(path) : 0;
priv->index_default = 0;