mirror of https://github.com/postgres/postgres
Remove support for old realpath() API
The now preferred way to call realpath() is by passing NULL as the second argument and get a malloc'ed result. We still supported the old way of providing our own buffer as a second argument, for some platforms that didn't support the new way yet. Those were only Solaris less than version 11 and some older AIX versions (7.1 and newer appear to support the new variant). We don't support those platforms versions anymore, so we can remove this extra code. Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi> Discussion: https://www.postgresql.org/message-id/flat/9e638b49-5c3f-470f-a392-2cbedb2f7855%40eisentraut.org
This commit is contained in:
parent
f0d1127595
commit
94980c4567
|
@ -285,25 +285,6 @@ pg_realpath(const char *fname)
|
|||
|
||||
#ifndef WIN32
|
||||
path = realpath(fname, NULL);
|
||||
if (path == NULL && errno == EINVAL)
|
||||
{
|
||||
/*
|
||||
* Cope with old-POSIX systems that require a user-provided buffer.
|
||||
* Assume MAXPGPATH is enough room on all such systems.
|
||||
*/
|
||||
char *buf = malloc(MAXPGPATH);
|
||||
|
||||
if (buf == NULL)
|
||||
return NULL; /* assume errno is set */
|
||||
path = realpath(fname, buf);
|
||||
if (path == NULL) /* don't leak memory */
|
||||
{
|
||||
int save_errno = errno;
|
||||
|
||||
free(buf);
|
||||
errno = save_errno;
|
||||
}
|
||||
}
|
||||
#else /* WIN32 */
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue