diff --git a/src/fcxml.c b/src/fcxml.c index 0db318c..83019c0 100644 --- a/src/fcxml.c +++ b/src/fcxml.c @@ -1299,12 +1299,17 @@ _get_real_paths_from_prefix(FcConfigParse *parse, const FcChar8 *path, const FcC if (FcStrCmp (prefix, (const FcChar8 *) "xdg") == 0) { parent = FcConfigXdgDataHome (); - e = FcConfigXdgDataDirs (); - if (!parent || !e) + if (!parent) { /* Home directory might be disabled */ return NULL; } + e = FcConfigXdgDataDirs (); + if (!e) + { + FcStrFree (parent); + return NULL; + } } else if (FcStrCmp (prefix, (const FcChar8 *) "default") == 0 || FcStrCmp (prefix, (const FcChar8 *) "cwd") == 0)