Preserve errno across free().

Dept. of second thoughts: free() isn't guaranteed not to change errno.
Make sure we report the right error if getcwd() fails.
This commit is contained in:
Tom Lane 2014-04-04 19:07:37 -04:00
parent 9aca512506
commit 2209c0f861

View File

@ -608,7 +608,10 @@ make_absolute_path(const char *path)
}
else
{
int save_errno = errno;
free(buf);
errno = save_errno;
#ifndef FRONTEND
elog(ERROR, "could not get current working directory: %m");
#else