Add FcReadLink to wrap up readlink impl.
This commit is contained in:
parent
767e3aa7c5
commit
3642d71724
|
@ -2218,7 +2218,7 @@ FcConfigRealFilename (FcConfig *config,
|
||||||
|
|
||||||
if (n)
|
if (n)
|
||||||
{
|
{
|
||||||
char buf[PATH_MAX];
|
FcChar8 buf[PATH_MAX];
|
||||||
ssize_t len;
|
ssize_t len;
|
||||||
|
|
||||||
if (sysroot)
|
if (sysroot)
|
||||||
|
@ -2227,7 +2227,7 @@ FcConfigRealFilename (FcConfig *config,
|
||||||
nn = FcStrdup (n);
|
nn = FcStrdup (n);
|
||||||
FcStrFree (n);
|
FcStrFree (n);
|
||||||
|
|
||||||
if ((len = readlink ((const char *) nn, buf, sizeof (buf) - 1)) != -1)
|
if ((len = FcReadLink (nn, buf, sizeof (buf) - 1)) != -1)
|
||||||
{
|
{
|
||||||
buf[len] = 0;
|
buf[len] = 0;
|
||||||
FcStrFree (nn);
|
FcStrFree (nn);
|
||||||
|
|
|
@ -37,6 +37,9 @@
|
||||||
#if HAVE_FCNTL_H
|
#if HAVE_FCNTL_H
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#endif
|
#endif
|
||||||
|
#if HAVE_UNISTD_H
|
||||||
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
@ -256,6 +259,22 @@ FcMakeDirectory (const FcChar8 *dir)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ssize_t
|
||||||
|
FcReadLink (const FcChar8 *pathname,
|
||||||
|
FcChar8 *buf,
|
||||||
|
size_t bufsiz)
|
||||||
|
{
|
||||||
|
#ifdef HAVE_READLINK
|
||||||
|
return readlink ((const char *) pathname, (char *)buf, bufsiz);
|
||||||
|
#else
|
||||||
|
/* XXX: this function is only used for FcConfigRealFilename() so far
|
||||||
|
* and returning -1 as an error still just works.
|
||||||
|
*/
|
||||||
|
errno = ENOSYS;
|
||||||
|
return -1;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
#define __fccompat__
|
#define __fccompat__
|
||||||
#include "fcaliastail.h"
|
#include "fcaliastail.h"
|
||||||
#undef __fccompat__
|
#undef __fccompat__
|
||||||
|
|
|
@ -822,6 +822,11 @@ FcRandom (void);
|
||||||
FcPrivate FcBool
|
FcPrivate FcBool
|
||||||
FcMakeDirectory (const FcChar8 *dir);
|
FcMakeDirectory (const FcChar8 *dir);
|
||||||
|
|
||||||
|
FcPrivate ssize_t
|
||||||
|
FcReadLink (const FcChar8 *pathname,
|
||||||
|
FcChar8 *buf,
|
||||||
|
size_t bufsiz);
|
||||||
|
|
||||||
/* fcdbg.c */
|
/* fcdbg.c */
|
||||||
|
|
||||||
FcPrivate void
|
FcPrivate void
|
||||||
|
|
Loading…
Reference in New Issue