summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorOndrej Balaz <blami@blami.net>2023-01-25 05:00:57 +0900
committerOndrej Balaz <blami@blami.net>2023-01-25 06:14:54 +0900
commitda1e3f35e61597fbf58c9c550ceba6d44abb1563 (patch)
tree3507534afd66408228ffc6948ef09dba2f34a478 /src
parentf7091cd17b33e8e6023a69a95e0665959ce0104e (diff)
downloadfontconfig-da1e3f35e61597fbf58c9c550ceba6d44abb1563.tar.gz
Expand ~ in glob
Allow ~ home directory expansion in acceptfont and rejectfont globs. Fixes: #347
Diffstat (limited to 'src')
-rw-r--r--src/fccfg.c7
-rw-r--r--src/fcxml.c5
2 files changed, 10 insertions, 2 deletions
diff --git a/src/fccfg.c b/src/fccfg.c
index 29124f5..f62e228 100644
--- a/src/fccfg.c
+++ b/src/fccfg.c
@@ -2923,8 +2923,13 @@ FcConfigGlobAdd (FcConfig *config,
FcBool accept)
{
FcStrSet *set = accept ? config->acceptGlobs : config->rejectGlobs;
+ FcChar8 *realglob = FcStrCopyFilename(glob);
+ if (!realglob)
+ return FcFalse;
- return FcStrSetAdd (set, glob);
+ FcBool ret = FcStrSetAdd (set, realglob);
+ FcStrFree(realglob);
+ return ret;
}
static FcBool
diff --git a/src/fcxml.c b/src/fcxml.c
index 74c892d..c700f64 100644
--- a/src/fcxml.c
+++ b/src/fcxml.c
@@ -2960,7 +2960,10 @@ FcParseAcceptRejectFont (FcConfigParse *parse, FcElement element)
vstack->u.string,
element == FcElementAcceptfont))
{
- FcConfigMessage (parse, FcSevereError, "out of memory");
+ if (FcStrUsesHome(vstack->u.string) && FcConfigHome() == NULL)
+ FcConfigMessage (parse, FcSevereWarning, "Home is disabled");
+ else
+ FcConfigMessage (parse, FcSevereError, "out of memory");
}
else
{