summaryrefslogtreecommitdiff
path: root/src/fcdefault.c
diff options
context:
space:
mode:
authorAkira TAGOH <akira@tagoh.org>2013-01-17 12:49:16 +0900
committerAkira TAGOH <akira@tagoh.org>2013-01-17 12:49:16 +0900
commit671bcb34e23ed03b1f564af35560db81f8b12b96 (patch)
tree73a60b5f0609ca89ccc85c0c1096a86513950f80 /src/fcdefault.c
parent2fe5ddfdae6be80db5b7e622ab6c1ab985377542 (diff)
downloadfontconfig-671bcb34e23ed03b1f564af35560db81f8b12b96.tar.gz
Better fix for 2fe5ddfd
Drop realpath() and fix breakage on Win32
Diffstat (limited to 'src/fcdefault.c')
-rw-r--r--src/fcdefault.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/fcdefault.c b/src/fcdefault.c
index 2d7c4f7..b1bd9cc 100644
--- a/src/fcdefault.c
+++ b/src/fcdefault.c
@@ -140,23 +140,23 @@ retry:
prgname = FcStrdup (p);
}
+#elif defined (HAVE_GETPROGNAME)
+ const char *q = getprogname ();
+ if (q)
+ prgname = FcStrdup (q);
+ else
+ prgname = FcStrdup ("");
#else
char buf[PATH_MAX + 1];
unsigned int len;
char *p = NULL;
-#if defined (HAVE_GETPROGNAME) && defined (HAVE_REALPATH)
- const char *q = getprogname ();
- if (q)
- p = realpath (q, buf);
-#else
len = readlink ("/proc/self/exe", buf, sizeof (buf) - 1);
if (len > 0)
{
buf[len] = '\0';
p = buf;
}
-#endif
if (p)
{
@@ -171,12 +171,12 @@ retry:
if (!prgname)
prgname = FcStrdup ("");
+#endif
if (!fc_atomic_ptr_cmpexch (&default_prgname, NULL, prgname)) {
free (prgname);
goto retry;
}
-#endif
}
if (prgname && !prgname[0])